Я имею HTAccess линию согласно ниже: -Внутренняя ошибка сервера Htaccess
Options +FollowSymlinks
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule ^(.*)$ $1.php [NC,L]
RewriteRule ^articles/images/(.*)$ images/$1
RewriteRule ^articles/(.*)/images/(.*)$ images/$2
RewriteRule ^articles/([a-zA-Z0-9_-]+)$ articles.php?articleType=$1
RewriteRule ^articles/([a-zA-Z0-9_-]+)/([0-9]+)$ articles.php?articleType=$1&page=$2
RewriteRule ^articles/([a-zA-Z0-9_-]+)/(.*)$ articles.php?articleType=$1&articleID=$2
Проблема заключается в том, если я комментирую RewriteRule ^(.*)$ $1.php [NC,L]
, http://localhost/trip/articles/Sightseeing
может быть дисплей. Но я не могу отобразить http://localhost/trip/privacy
(Ошибка: объект не найден!). Если я раскомментирую строку, я могу отобразить http://localhost/trip/privacy
, но не могу отобразить http://localhost/trip/articles/Sightseeing
(Ошибка: Внутренняя ошибка сервера).
Я уже пробовал вставить <Directory /> AllowOverride All </Directory>
и получил ошибку: Ошибка сервера! и вставьте <IfModule mod_rewrite.c>...</IfModule>
и получите ошибку: Внутренняя ошибка сервера.
Есть ли способ для обеих ссылок быть успешно отображен? Заранее спасибо.
Хмм не портативное решение, поскольку в настоящее время правила не могут переписать '/ реж/File' в'/реж/file.php', как у вас есть '^ ([^/] +) $ 'regex pattern. – anubhava