Les URL conviviales dans le framework Phalcon ne fonctionnent pas dans Ubuntu [fermé]
Question
J'ai essayé ces deux codes.Mais ça ne fonctionne pas.Il doit également accéder au dossier public.
http://docs.phalconphp.com/en/latest/reference/tutorial.html
#www/tutoriel/.htaccess
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteRule ^$ public/ [L]
RewriteRule (.*) public/$1 [L]
</IfModule>
#www/tutorial/public/.htaccess
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php?_url=/$1 [QSA,L]
</IfModule>
La solution
Si mod_rewrite
est activé, je suppose que votre serveur n'est pas avec le AllowOverride
option correctement définie...
Tous .htaccess les fichiers sont ignorés par défaut dans Apache car quelqu'un peut réussir à télécharger un .htaccess fichier sur votre serveur et remplacez les configurations de votre serveur.Si vous êtes sûr que le système de fichiers de votre serveur est protégé, vous pouvez indiquer explicitement dans la configuration du serveur que vos paramètres peuvent être remplacés par n'importe quel .htaccess
fichier dans vos répertoires.
Cela se fait via le AllowOverride
paramètre.Faire référence à cette question pour comprendre un peu plus ce sujet.
Autres conseils
Si vous êtes sur Ubuntu Modifier le fichier /etc/apache2/apache2.conf (ici, nous avons un exemple de / var / www)
<Directory /var/www/>
Options Indexes FollowSymLinks
AllowOverride None
Require all granted
</Directory>
et le changer à;
<Directory /var/www/>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
alors
Service sudo Apache2 Redémarrez