Файл .htaccess не запущен и внутренняя ошибка сервера

3924
Farman Ali

Я использую Ubuntu 14.04 и у меня есть среда LAMP. У меня есть один проект в dir / var / www / html / project1 . Он не может получить доступ к файлу .htaccess для перезаписи правил URL.

Для этого мне нужно изменить в файле /etc/apache2/apache2.conf

 <Directory /var/www/> Options Indexes FollowSymLinks AllowOverride All # change None to All Order allow,deny allow from all Require all granted </Directory> 

Но после этого изменения мой сервер Apache выдает ошибку «Внутренняя ошибка сервера», а apache выдает ошибку для любого веб-сайта (проекта).

И если я изменю «AllowOverride None», то сайт работает правильно, но файл .htaccess не работает.

«Внутренняя ошибка сервера» из - за файл .htaccess в другом проекте, который, как это

Options +FollowSymLinks RewriteEngine On RewriteCond % base64_encode[^(]*\([^)]*\) [OR] RewriteCond % (<|%3C)([^s]*s)+cript.*(>|%3E) [NC,OR] RewriteCond % GLOBALS(=|\[|\%[0-9A-Z]) [OR] RewriteCond % _REQUEST(=|\[|\%[0-9A-Z]) RewriteRule .* index.php [F] RewriteRule .* - [E=HTTP_AUTHORIZATION:%] RewriteCond % !^/index\.php RewriteCond % !-f RewriteCond % !-d RewriteRule .* index.php [L]  

Я ничего не могу понять в файле htaccess. Пожалуйста, помогите мне переписать файл htaccess и его значение.

Спасибо

0

1 ответ на вопрос

2
Jacob Margason

Вместо изменения директивы в блоке по умолчанию вы должны использовать отдельный блок специально для вашего каталога проекта:

<Directory /var/www/html/project1> Options Indexes FollowSymLinks AllowOverride All Order allow,deny allow from all Require all granted </Directory> 

Это позволит использовать только файлы .htaccess в этом конкретном каталоге.

Ошибка 500, которую вы получаете, вероятно, вызвана неправильным синтаксисом в файле .htaccess. Было бы полезно, если бы вы показали нам, что у вас есть во всех файлах .htaccess.

В качестве альтернативы вы можете посмотреть в журналах ошибок Apache /var/log/apache2/error.log для получения более конкретной информации об ошибке.

Спасибо, это решает мою проблему. Но я думаю, что одна из моих файлов htaccess причина ** Внутренняя ошибка сервера ** это как показано ниже Farman Ali 9 лет назад 0