WordPress дает мне 404 страницы, не найденные для всех страниц, кроме главной страницы
внезапно я иду на свой сайт WordPress,и все страницы дают мне 404 страницы, которые не найдены. Я предполагаю, что проблема заключается в структуре permalink, которую я могу поклясться, что не трогал. Постоянная ссылка на "месяц и название."
Я исследовал подобные случаи этой проблемы в интернете, и многое из этого связано с ? Я пытался найти, но не могу. Может, его как-то удалили? Где он должен быть расположен.
любой предложения будут полезны
и, конечно, я вижу скрытые файлы.
21 ответов
.htaccess-это скрытый файл, поэтому вы должны установить все файлы, как видимые в вашем FTP.
Я предлагаю вам вернуть структуру permalink по умолчанию ( ?p=ID), поэтому вы гарантируете это .проблема в htaccess.
после этого вы можете просто установить структуру "месяц и имя" снова и посмотреть, работает ли она.
PS: вы обновили до 3.1? Я видел некоторых людей с проблемами плагина в этом случае.
исправление этой проблемы очень просто, если вы использовали постоянные ссылки, отличные от default
например Day and name
, Month and name
, Numeric
, Post name
или Custom Structure
, вам необходимо лишь
войти в вашу админку: Settings > Permalinks
что надо : http://yoursite.com/wp-admin/options-permalink.php
выбрать Default
настройка permalink, затем Сохранить изменения
тут вы можете верните его снова в другой предыдущий выбор permalink или сохранить как default
как Yo желание
обратите внимание, что эта проблема может возникнуть при перемещении сайта из домена или местоположения в другой.
в основном .файл htaccess должен существовать и httpd.conf должен быть правильным.
в моем случае я изменил файл /etc/httpd/conf / httpd.Conf в разделе:
<Directory "/var/www/html">
изменить строки:
AllowOverride None
to
AllowOverride All
и перезапустите веб-сервер.
если поведение по умолчанию (example.com/?p=42
) работает, вы должны:
- изменить предпочтительный стиль permalink:
Admin: Settings > Paramalinks
, и нажмите кнопку Сохранить. Иногда это устраняет проблему. Если нет: - убедитесь, что файл
/path/to/wordpress/.htaccess
был изменен и теперь включает в себя строкуRewriteEngine On
. Если это не так, это проблема с разрешениями Wordpress. -
убедитесь, что модуль "переписать" загружен: создайте PHP-файл с
<?php phpinfo() ?>
в нем, открыть его в браузере и поиск
mod_rewrite
. Он должен быть в разделе "загруженные модули". Если это не так, включите его - посмотрите на свой Apache default подробности - в Ubuntu, вы делаете это с помощьюa2enmod
. -
убедитесь, что сервер Apache смотрит на . открыть
httpd.conf
- или это альтернатива Ubuntu,/etc/apache2/apache2.conf
. В нем, вы должны иметь что-то вроде<Directory /path/to/wordpress> Options Indexes FollowSymLinks AllowOverride All Require all granted </Directory>
после внесения этих изменений, не забудьте перезапустите сервер apache.
sudo service apache2 restart
в админке Вордпресса сделать следующее:
перейдите в настройки администратора
нажмите на permalink и выберите post name в переключателе.
-
прокрутите вниз и вы увидите
.htaccess
код здесь нравится.<IfModule mod_rewrite.c> RewriteRule ^index\.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /wordpress/index.php [L] </IfModule>
- скопируйте код и вставьте в .
легко исправить проблему, просто выполните следующие действия ,Если вы получаете доступ для входа в панель администратора, то просто
Go to Settings » Permalinks, and simply click on Save Changes button
.
это обновит ваши настройки постоянных ссылок и правила перезаписи flush. В большинстве случаев это решение исправляет ошибку WordPress posts 404. Однако, если это не работает для вас, то вам, вероятно, нужно обновить свой .файл htaccess вручную.
войдите на свой сервер с помощью FTP и измените .реврайт файл, который находится в том же месте, где находятся папки, такие как /wp-content/ и / wp-includes/ , просто поместите коды ниже в свой .реврайт
# 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
надеюсь, что это решит проблему.
эта ошибка вызывает из-за отключения перезаписи mod в Apache httpd.conf документ, просто раскомментировать его и наслаждаться seo дружественных permalinks
если все это не сработает, ваш .htaccess является правильным, и permalinks трюк не работал, вы, возможно, не включили свой apache2 rewite mod.
Я побежал это и моя проблема была решена:
sudo a2enmod rewrite
- проверьте, что каталог включен .htaccess для правильного
- Проверьте поля "siteurl" и "home" являются правильными
Если у вас есть FTP-доступ к вашей учетной записи:
во-первых, войдите в свой wp-admin и перейдите в Настройки > Permalinks
вы должны увидеть что-то внизу, что говорит:
"Если ваш .файл htaccess был доступен для записи, мы могли бы сделать это автоматически, но это не так, таковы правила mod_rewrite вы должны иметь в своем .файл htaccess. Щелкните в поле и нажмите CTRL + a, чтобы выбрать все."
Если это правда, сделайте следующий:
перейдите в настройки для вашего FTP-клиента и убедитесь, что отображаются скрытые файлы (зависит от вашего FTP - клиента) - если вы этого не сделаете, вы не сможете найти свой файл htaccess
перейдите в папку, в которой находятся каталоги wp-admin, wp-content, wp-includes. Проверять. файл htaccess. Если он существует, перейдите к шагу 4
Если он не существует, создайте новый пустой файл в своем FTP-программу под названием .реврайт
измените CHMOD для вашего .htaccess файл в 666 (ваши предпочтения о том, как вы хотите это сделать)
вернитесь на страницу Permalinks и отредактируйте нужную структуру ссылок. Проблема должна быть решена!
обязательно измените chmod файла htaccess на 644 после того, как вы закончите.
просто была та же проблема, и казалось, что это исправить мгновенно! Удачи!
большую часть времени эта проблема исправлена, просто посетив Настройки - > Permalink страница в Администраторе WordPress и нажмите "Сохранить" (как уже указывалось в нескольких других ответах). Когда эта страница доступна, WordPress переписывает директивы в .htaccess
файл, который волшебным образом устраняет проблему. Проблема часто возникает после перемещения сайта (Сайт ломается, потому что .htaccess
остается позади или настройки должны быть обновлены).
если WordPress не имеет правильные разрешения для записи .htaccess
файл, уведомление появится в верхней части страницы и дальнейшие инструкции в нижней части, когда настройки будут сохранены. В этом случае вам нужно отредактировать .htaccess
файл самостоятельно или, лучше, чтобы исправить разрешения на этот файл. Файл находится в корне установки WordPress. cd
в каталоге sudo chmod 644 .htaccess
. Вы также можете проверить, принадлежит ли файл к правильной группе, и изменить это с помощью chown
. Спросите вашего хостинга провайдер если вы не знаете, как это сделать.
если вы находитесь на общем хостинге, это, вероятно, все, что вы можете сделать. Если у вас все еще есть проблема, вы можете поговорить с поддержкой хостинг-провайдера. В противном случае убедитесь, что используется .htaccess
файлы включена на сервере, как @георгеос уже предложил. Обратите внимание, что httpd.conf
не всегда используется (Ubuntu указывает, что он устарел но официальные документы Apache по-прежнему говорят, что это часто основная конфигурация файл). /etc/httpd/conf/httpd.conf
и /etc/apache2/apache2.conf
кажется, наиболее распространенными местами для этого файла. Найдите блок для общей папки, обычно <Directory /var/www/>
и убедитесь, что AllowOverride
директива установлена в All
. Если установлено значение None
ваш .htaccess
файл просто игнорируется сервером.
Я установил mod_rewrite, чтобы исправить эту проблему. Ниже ссылка предоставляет руководство по установке:- http://www.iasptk.com/enable-apache-mod_rewrite-ubuntu-14-04-lts/
у нас была такая же проблема и решил ее проверить на ошибки.журнал нашего виртуального хоста. Мы нашли следующее сообщение:
AH00670: параметры FollowSymLinks и SymLinksIfOwnerMatch отключены, таким образом, директива RewriteRule также запрещена из-за ее сходства возможность обойти ограничения каталога : /СРВ/в WWW/htdocs в/РГ-интранет/
решение было установить Options All
и AllowOverride All
в нашей конфигурации виртуального хоста.
возможно .htaccess запрещен в настройках веб-хоста. Настройка постоянные ссылки по умолчанию будет работать в этом случае.
просто перейдите в раздел Настройки - >Permalink в приборной панели, а затем Сохранить Изменения кнопка в последнем.\
Случай 1: - давайте подумаем, если перенести сайт с одного хостинга на другой хостинг, если видите такую проблему.
решение: - просто перейдите к старой копии сервера .htaccess код файла, затем мимо в новом сервере .файл htaccess. 99% его работ.
если ваша установка WordPress находится в подпапке (ex. https://www.example.com/subfolder) измените эту строку в своем WordPress .htaccess
RewriteRule . /index.php [L]
до
RewriteRule . /subfolder/index.php [L]
таким образом, вы говорите серверу искать WordPress index.php
в папке WordPress (ex. https://www.example.com/subfolder), а не в общей папке (ex. https://www.example.com).
Я просто изменил постоянную ссылку на "месяц и День" всех сообщений, перейдя к настройке>Постоянная ссылка.
теперь все сообщения открыты и работают нормально.
опять же, я переименовал все сообщения в его фактическую постоянную ссылку. Его снова работает нормально.
этот метод сработал для меня: -)
для пользователей nginx
используйте следующее в файле conf для вашего сайта (обычно /etc/nginx/sites-available/example.com
)
location / {
try_files $uri $uri/ /index.php?q=$uri&$args;
}
Это руки от всех запросов permalink индексировать.php со строкой URI и предоставленными аргументами. Сделай systemctl reload nginx
чтобы увидеть изменения, и ваши ссылки не на главной странице должны загружаться.
У меня была эта проблема не так давно. Я сбросил свою постоянную ссылку по умолчанию или просто сохранил ее, обновил темы/ядро до (4.7.4)/плагинов, деактивировал все плагины, переключился на тему по умолчанию, оптимизировал базу данных .htaccess уже по умолчанию, проверены права доступа к файлам, mod_rewrite включен.
пока ничего не работает, что работает сообщения, новая страница, страница /contact за исключением старых страниц.
в основном, страницы / URL-адреса, которые не работают являются:
/breeding
/training
/training/*
/breeding/*
Ultimate, я нашел эти файлы в корневой папке:
/разведения.php и / обучение.в PHP
я переименовал оба файла, и страницы выше работали.