J'ai un scénario comme suit: p>
Par exemple, j'ai un site Web j'ai un sous-dossier Comment dois-je configurer ceci avec un fichier http://www.example.com code>, et j'ai configuré quelques sous-domaines tels que
http://video.example.com Code>,
http://image1.example.com code>,
http://image2.example.com code>. Dans le réglage d'hôte virtuel Apache, ils utilisent le même dossier (par exemple
/ home / exemple / code>). (Ces deux domaines ont une configuration de bande passante différente à l'aide de mod_cband). P>
/ home / exemple / vidéos code>, je veux le rendre accessible uniquement à partir du sous-domaine
http://video.example.com/files/videos/ code> mais pas em> de
http://www.example.com/files/videos/ code> ou d'autres sous-domaines. p>
.htacaccess code>? p>
3 Réponses :
rewritecond %{HTTP_HOST} video.mywebsite.com [s=1] rewriterule files/videos/.* - [F]
Vous pouvez vérifier l'hôte, puis gérer cela avec mod_rewrite a > Création d'une redirection 301 dans un fichier meilleur scénario strong> p> Comme il ressemble à mod_cband veut un autre virtualhost Pour chaque domaine, vous configureriez votre .htaccess code>; Bien que si vous avez accès, il est bien meilleur si vous le faites dans le
httpd.conf code> ou un fichier de configuration inclus à la place.
httpd.conf code> fichier comme ceci et inclure le fichier Réécrivez les règles dans la configuration elle-même. Certains héberges Web feront cette méthode sur laquelle le site de compte principal est le
DocumentOroTroot Code> et les autres sites sont tous imbriqués sous le répertoire ITS: P>
RewriteEngine On
RewriteCond %{HTTP_HOST} !^video.mywebsite.com$
RewriteRule ^(files/videos/.*)$ http://video.mywebsite.com/$1 [R=301,L]
#Check to make sure if they're on the video domain
#that they're in the video folder otherwise 301 to www
RewriteCond %{HTTP_HOST} ^video.mywebsite.com$
RewriteCond %{REQUEST_URI} !^/files/videos [NC]
RewriteRule ^.*$ http://www.mywebsite.com/ [R=301,L]
RewriteCond %{HTTP_HOST} !^image1.mywebsite.com$
RewriteRule ^(files/images1/.*)$ http://image1.mywebsite.com/$1 [R=301,L]
#Check to make sure if they're on the image1 domain
#that they're in the images1 folder
RewriteCond %{HTTP_HOST} ^image1.mywebsite.com$
RewriteCond %{REQUEST_URI} !^/files/images1 [NC]
RewriteRule ^.*$ http://www.mywebsite.com/ [R=301,L]
RewriteCond %{HTTP_HOST} !^image2.mywebsite.com$
RewriteRule ^(files/images2/.*)$ http://image2.mywebsite.com/$1 [R=301,L]
#Check to make sure if they're on the image1 domain
#that they're in the images2 folder
RewriteCond %{HTTP_HOST} ^image2.mywebsite.com$
RewriteCond %{REQUEST_URI} !^/files/images2 [NC]
RewriteRule ^.*$ http://www.mywebsite.com/ [R=301,L]
mettre ce code dans /home/mywebsite/files/videos/.htaccess code>
Vérification du référent est la "solution" la plus courante pour cela - dans des guillemets, car le référent n'est pas fiable.