apache2 virtualhost .htaccess файл не работает

Я не могу заставить мой файл.htaccess работать правильно.

В моем apache2.conf файл у меня следующий.

<Directory /home/felix/mysite>
    Options Indexes FollowSymLinks
    AllowOverride All
    Require all granted
</Directory>

Но это ничего не меняет. Я все еще получаю сообщение об ошибке 404 при попытке доступа к различным страницам на моем сайте.

РЕДАКТИРОВАТЬ больше информации:

Ubuntu 16.04

Apache 2.4

Внутри моих сайтов sites-available У меня есть мой mysite.se.conf файл, который выглядит как:

<VirtualHost *:80>    
    ServerAdmin webmaster@localhost
    DocumentRoot /home/felix/mysite
    ServerName mysite.se
    ServerAlias www.mysite.se

    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

Я попытался удалить эту часть из apache2.conf:

<Directory /home/felix/mysite>
    Options Indexes FollowSymLinks
    AllowOverride All
    Require all granted
</Directory>

И получил это сообщение сейчас You don't have permission to access / on this server. Server unable to read htaccess file, denying access to be safe,

Я получаю это сообщение сейчас, даже когда я добавил эту часть обратно.

Сайт, который я пытаюсь заставить работать, построен на WordPress. Внутри корневой папки этого сайта у меня есть файл.htaccess, который выглядит так:

# supress php errors
php_flag display_startup_errors off
php_flag display_errors off
php_flag html_errors off
php_value docref_root 0
php_value docref_ext 0
# End Error

# BEGIN WordPress
<IfModule mod_rewrite.c>
ReewriteEngine On
eRewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress

Дело в том, что эти настройки работают на другом компьютере с Ubuntu. И администратор сервера не смог найти ошибку в моем. Поэтому он сказал, что, вероятно, некоторые недостатки в конфигурации apache2. Но я не могу найти это, кажется, все так, как должно.

Я думаю, что это может быть ошибка: https://www.digitalocean.com/community/questions/wordpress-permalinks-not-working-on-ubuntu-14-04

в частности: Also make sure your .htaccess file has the proper permissions for WP to write to it. You'll see an error if it doesn't.

Как я могу изменить его на правильное разрешение?

РЕШЕНИЕ:

Мне жаль, что я не могу дать лучшего решения. Но все, что я сделал, было sudo a2enmod rewrite затем sudo service apache2 restart, В первый раз, когда я сделал это, я получил ошибку (ошибка сервера 500 или ошибка разрешения 403, не помню), но попробовал это снова этим утром, и это сработало. Так что мои файлы по-прежнему выглядят так, как указано выше.

1 ответ

Попробуй отредактировать mysite.se.conf:

<VirtualHost *:80>    
    ServerAdmin webmaster@localhost
    DocumentRoot /home/felix/job/fello
    ServerName test.fello.se
    ServerAlias www.test.fello.se
    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
    <Directory "/home/felix/job/fello">
        Options Indexes FollowSymLinks
        AllowOverride All
        Require all granted
    </Directory>
</VirtualHost>

И проверьте путь к вашему сайту /home/felix/mysite или же /home/felix/job/fello?

Другие вопросы по тегам