Aller au contenu

Activer URL Rewriting sous debian 6


Khleo

Sujets conseillés

Bonjour,

J'ai un léger problème avec mon URL rewriting.

je souhaiterai rediriger http://mondomaine.com/nom vers http://mondomaine.com/page.php?p=nom

Ça fonctionnait très bien en local, mais depuis que je suis sur un serveur de test debian 6, ça ne fonctionne plus.

<VirtualHost *:80>

ServerAdmin postmaster_AT_test1.com

ServerName www.user.com

ServerAlias user.com

DocumentRoot /home/user/public_html/

<Directory /home/user/public_html/>

Options FollowSymLinks

AllowOverride All

</Directory>

ErrorLog /home/user/logs/error.log

LogLevel warn

CustomLog /home/user/logs/access.log combined

ServerSignature Off

</VirtualHost>

J'ai activé "a2enmod rewrite"

Mon .htaccess :

# Activation du module de réécriture d'URL :

RewriteEngine on

RewriteCond %{REQUEST_FILENAME} !-d

RewriteCond %{REQUEST_FILENAME} !-f

RewriteRule ^(.*)$ page.php?p=$1 [QSA,L]

Lorsque j'affiche http://mondomaine.com/nom, j'obtient l'erreur suivante, alors que le fichier page.php existe.

Not Found

The requested URL /home/user/public_html/page.php was not found on this server.

Merci

Modifié par Khleo
Lien vers le commentaire
Partager sur d’autres sites

Es-tu certain que le fichier page.php existe dans /home/user/public_html et est lisible par Apache ? Vérifie aussi les permissions des répertoires intermédiaires !

Parce que ta redirection se fait bien vu qu'Apache cherche ce fichier mais ne le trouve pas !

Lien vers le commentaire
Partager sur d’autres sites

Es-tu certain que le fichier page.php existe dans /home/user/public_html et est lisible par Apache ? Vérifie aussi les permissions des répertoires intermédiaires !

Parce que ta redirection se fait bien vu qu'Apache cherche ce fichier mais ne le trouve pas !

Oui page.php se trouve bien dans le dossier avec les droits www-data :

# ls -l /home/user/public_html

total 180

[...]

-rw-r--r-- 1 www-data www-data 2214 1 mai 22:57 page.php

[...]

Comment je fais pour vérifier les répertoires intermédiaires ?

Merci

Lien vers le commentaire
Partager sur d’autres sites

Comment je fais pour vérifier les répertoires intermédiaires ?

Et tu comptes gérer le serveur ? ;)

ls -ld /home /home/user /home/user/public_html

Sinon, tu appelles directement l'URL page.php?p=nom dans ton navigateur, pour vérifier.

Lien vers le commentaire
Partager sur d’autres sites

Avec l'IP 192.168.1.17 cela ne peut fonctionner qu'en local vu que cette classe d'IP n'est pas routable !

Pour que la réécriture fonctionne comme il faut, il faut que $_SERVER['DOCUMENT_ROOT'] soit défini... donc une url en ~user n'aura pas cette variable mise comme il se doit !

Lien vers le commentaire
Partager sur d’autres sites

Avec l'IP 192.168.1.17 cela ne peut fonctionner qu'en local vu que cette classe d'IP n'est pas routable !

Oui, je me doute bien :) c'était pour montrer l'exemple de l'url

Pour que la réécriture fonctionne comme il faut, il faut que $_SERVER['DOCUMENT_ROOT'] soit défini... donc une url en ~user n'aura pas cette variable mise comme il se doit !

Ok, je re-testerais quand je serai avec un nom de domaine

Merci

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...