Почему я получаю 404 на постоянные ссылки LAMP (используя WordPress)

Я работаю над сайтом на сервере Ubuntu (amazone), и я получаю 404-е входящие страницы.

Я дам всю информацию, которую я могу относительно проблемы.

На WordPress

введите описание здесь

введите описание здесь

Обновить страницу:

введите описание здесь

Я следовал этому уроку:

https://wordpress.org/support/topic/solved-permalinks-working-in-apache2-ubuntu-1010?replies=6

И ничего не помогло.

Я нашел это сообщение https://wordpress.org/support/topic/permalink-does-not-work-apart-from-default?replies=12 - поэтому я вошел, я ввел файл: /etc/apache2/sites-enabled/000-default.conf

и не нашел AllowOverride None изменить на AllowOverride All Поэтому я добавил это сам здесь: введите описание здесь

Перезапустил apache, и я получил ошибку. Я обновил сайт и обнаружил, что он не работает..

расстегивать AllowOverride All от 000-default.conf

Какое решение для этого? Я никогда не работал с серверами Linux, поэтому мне нужен очень четкий и понятный ответ, пожалуйста.

Кстати, это то, что WP генерирует в моем файле.htaccess:

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

# END WordPress

2 ответа

Откройте терминал и введите:

sudo gedit /etc/apache2/apache2.conf

Найдите это:

<Directory /var/www/>

+ Изменить AllowOverride None в AllowOverride All

Затем запустите:

sudo a2enmod rewrite

Не забудьте перезапустить apache2:

sudo service apache2 restart

Вы можете проверить, существует ли файл htaccess в вашем домашнем каталоге WordPress, как показано выше. Если его там нет, создайте его:

$ sudo nano /var/www/html/.htaccess

и скопировать вставить ниже к нему

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

Нажмите ctrl+x и нажмите y, чтобы сохранить файл. И перезапустите Apache

$ sudo service apache2 restart

Вы бы хотели, чтобы Apache следовал за вашим файлом.htaccess. Вы можете сделать это, отредактировав файл apache.conf

$sudo nano /etc/apache2/apache.conf

Прокрутите вниз до строки. По умолчанию это будет:

<Directory /var/www/>
Options Indexes FollowSymLinks
AllowOverride None
Require all granted
</Directory>

измените значение AllowOverride на All, так что теперь оно становится:

<Directory /var/www/>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>

Нажмите ctrl+x и нажмите y, чтобы сохранить файл конфигурации. Чтобы внести эти изменения в сервер, сначала включите mod_rewrite.

$ sudo a2enmod rewrite

А затем перезапустите сервер

$ sudo service apache2 restart

Готово!

Источник: https://www.wst.space/riddling-with-wordpress-permalink-setup-issues/

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