Bonjour,
je suis le tutorial "création d'un site de A à Z" et je bloque sur le PATH_INFO encore une fois.
Dans mon fichier php.ini (/etc/php5/apache2/php.ini) j'ai bien décommenté la ligne
cgi.fix_pathinfo=1
. Et dans mon fichier de configuration apache (/etc/apache2/sites-available/default) j'ai ça :
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /www/htdocs/monsite
<Directory />
Options FollowSymLinks
AllowOverride None
AcceptPathInfo On
</Directory>
<Directory /www/htdocs/monsite>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
AcceptPathInfo On
Order allow,deny
allow from all
</Directory>
Et pourtant, quand je vais chercher mon index.php dans le chemin ./view/pages/index et que j'appelle simplement un
print_r ($_SERVER);
le PATH_INFO n'apparaît pas. Aurais-je omis un détail ? Merci pour ce super tuto et pour toute aide, bienvenue.
Auto-réponse pour la partie sur la redirection des URL. Le module rewrite n'était pas installé pour Apache 2 (pas de présence du module dans le phpinfo). J'ai donc créé un fichier "rewrite.load" dans /etc/apache2/mods-enabled contenant la ligne LoadModule rewrite_module /usr/lib/apache2/modules/mod_rewrite.so. Cela semble fonctionner pour le moment
Hello,
Le PATH_INFO ne s'affiche que si tu a des éléments appelant après ta racine :
root/www/tonsite/index/--> tout se qui s'affiche à partir de là est ton PATH_INFO.
du moins pour moi c'est comme ça que ça marche sur mon local et distant. De plus a tu vérifié tes .htaccess ?
en espérant avoir répondu à ta question
J'ai repris à zéro en prenant soin de bien faire un .htaccess. Ce sont exactement les mêmes que le tuto vidéo.
le .htaccess dans /www/htdocs/monsite :
RewriteEngine On
RewriteRule (.*) webroot/$1 [L]
Et celui dans /www/htdocs/monsite/webroot :
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule (.*) index.php/$1 [L]
Et pourtant, j'obtiens une erreur 500 lorsque je tente ne serait-ce que d’accéder à "monsite" .
voici la config Apache (/etc/apache2/sites-available/defaut)
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /www/htdocs
<Directory />
Options FollowSymLinks
AllowOverride AuthConfig FileInfo Indexes Limit
AcceptPathInfo On
Order allow,deny
allow from all
</Directory>
<Directory /www/htdocs>
Options Indexes FollowSymLinks MultiViews
AllowOverride AuthConfig FileInfo Indexes Limit
AcceptPathInfo On
Order allow,deny
allow from all
</Directory>
L'erreur se situe sûrement au niveau Apache, mais je ne la vois pas. Merci pour toute aide