Aller au contenu

Problème RewriteBase et Repertoire


Sujets conseillés

Bonjour!

Voilà j'ai un serveur dédié chez OVH et j'utilise des sous domaines virtuels qui sont redirigés vers un repertoire /blog

En fait on tape http://pseudo.blog-touch.com et on est redirigé vers http://www.blog-touch.com/blog

Mais je n'arrive pas à lire les fichiers qui sont dans le repertoire blog ==>je fais http://pseudo.blog-touch.com/test.jpg par exemple et ça me met une erreur 403!! Par contre ,lorsque je mets: http://pseudo.blog-touch.com/blog/test.jpg ça marche mais bon...

Pourtant dans le repertoire /blog j'ai mis un .htaccess

avec

RewriteEngine on

RewriteBase /blog/

Merci d'avance!

Lien vers le commentaire
Partager sur d’autres sites

En fait dans la racine / j'ai mis dans mon .htaccess:

RewriteEngine On
RewriteCond %{HTTP_HOST} !www
RewriteCond %{HTTP_HOST} ^([^\.]+)\.blog-touch\.com$ [NC]

et dans le repertoire /blog/ j'ai mis le .htaccess suivant:

RewriteEngine on
RewriteBase /blog/

J'aimerais que tous les fichiers dans le repertoire /blog soient accessibles à partir de http://pseudo.blog-touch.com/

que ce soit aussi bien des images que les sous-repertoires

--> exemples: - http://pseudo.blog-touch.com/test.jpg et non http://pseudo.blog-touch.com/blog/test.jpg

- http://pseudo.blog-touch.com/test/ et non http://pseudo.blog-touch.com/blog/test/

Sinon j'ai essayé juste de mettre juste une rule dans le .htaccess du repertoire /blog/

RewriteEngine on
RewriteBase /blog/
RewriteRule ^oups\.html oups.php

Et je dois faire http://pseudo.blog-touch.com/blog/oups.html pour que ça marche!!

Et non http://pseudo.blog-touch.com/oups.html comme je l'aurais voulu! SNIF :unsure:

Merci Dan de m'avoir lu!

Lien vers le commentaire
Partager sur d’autres sites

Supprime le RewriteBase ;)

Mais dans ton cas, pseudo est fixe ou tu veux avoir un blog distinct pour différents pseudos ?

D&ans le deuxième cas, c'est au niveau de la configuration Apache que cela se paramètre, avec l'utilisation du module vhost_alias et des VirtualDocumentRoot ;)

Dan

Lien vers le commentaire
Partager sur d’autres sites

Au début, je voulais faire comme tu avais expliqué dans plusieurs posts pour les sous-domaines dynamiques mais il fallait que je recompile Apache pour mettre le module vhost_alias. Ca m'a fait peur bref j'ai juste

fait la méthode avec le wildcard :

-* IN A MON_IP dans le fichier host

- serveralias * www.blog-touch.com

- un fichier htaccess pour rediriger pseudo.blog-touch.com pour vers www.blog-touch.com/blog/

-ensuite je compte faire un script qui sait ce qui est écrit avant le .blog-touch.com MAIS ce n'est pas le problème ici puisque je n'ai pas de problèmes avec les sous-domaines virtuels! :thumbsup:

Par contre les fichiers dans les dossiers... :thumbsdown:

Quand j'enlève le RewriteBase en effet ça ne change rien!

Le problème est que quand je suis dans http://pseudo.blog-touch.com/blog le navigateur (ou apache j'en sais rien) croit que je suis encore dans la racine alors qu'il me liste bien les fichiers du repertoire blog!! Comment lui faire comprendre que je suis bien dans le repertoire blog?

Lien vers le commentaire
Partager sur d’autres sites

Le problème est que quand je suis dans http://pseudo.blog-touch.com/blog le navigateur (ou apache j'en sais rien) croit que je suis encore dans la racine alors qu'il me liste bien les fichiers du repertoire blog!! Comment lui faire comprendre que je suis bien dans le repertoire blog?

Tout simplement en utilisant la balise <base href=&quot;http://...."> dans tes fichiers ;)

Mais dans ton exemple, tu ne donnes que les RewriteCond, et pas la règle qui suit :(

Difficile de t'aider dans ce cac.

Lien vers le commentaire
Partager sur d’autres sites

Mais si j'utilise une balise "base href" ça va peut-être réglé mes problèmes d'affichage d'image mais je ne pourrai pas faire des liens du style pseudo.blog-touch.com/page2.html mais toujours pseudo.blog-touch.com/blog/page2.html !!

LOL désolé je sais que je suis lourd mais n'y a t il pas moyen de faire comme toutes les plateformes de blogs?

D'avoir des test.over-blog.com/page2.html ou des test.blogorama.fr/ohoh.mp3, cad d'avoir accès à tous les fichiers d'un repertoire qui n'est pas virtuel?

Mais dans ton exemple, tu ne donnes que les RewriteCond, et pas la règle qui suit :(

Difficile de t'aider dans ce cac.

Ah oui suis-je bête!! Voici tout le fichier .htaccess de la racine!

RewriteEngine on
#Pour que http://blog-touch.com se redirige vers www.blog-touch.com
RewriteCond %{HTTP_HOST} ^blog-touch\.com$ [NC]
RewriteRule ^(.*) http://www.blog-touch.com/$1 [QSA,L,R=301]

#Pour que http://pseudo.blog-touch.com se redirige vers http://www.blog-touch.com/blog/
RewriteCond %{HTTP_HOST} !www
RewriteCond %{HTTP_HOST} ^([^\.]+)\.blog-touch\.com$ [NC]
RewriteRule ^(.*)$ /blog/

Merci Dan pour tes réponses très rapides et pertinentes! Toutes mes recherches google m'ont souvent fait tomber sur un de tes posts pour résoudre mes soucis passés!

Lien vers le commentaire
Partager sur d’autres sites

LOL désolé je sais que je suis lourd mais n'y a t il pas moyen de faire comme toutes les plateformes de blogs?

D'avoir des test.over-blog.com/page2.html ou des test.blogorama.fr/ohoh.mp3, cad d'avoir accès à tous les fichiers d'un repertoire qui n'est pas virtuel?

Si ! Tout simplement en recompilant Apache et en ajoutant le module vhost_alias :)

Dan

Lien vers le commentaire
Partager sur d’autres sites

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...