#wordpress #http-status-code-404
#wordpress #http-status-code-404
Вопрос:
что вы сделали с WordPress версии v3.0, все файлы direct PHP не работают в WP, все возвращаются 404 page not found
, я создал один плагин, он загружает /wp-content/plugins/myplugin/direct.php
файл, и что я вижу сейчас, он показывает мне мой сайт WP с заголовком PAGE NOT FOUND 404
, помогите мне, пожалуйста, я больше не могу работать с WP, все файлы direct PHP недоступны и не отслеживаются как 404
. Что я должен сделать, чтобы отключить это ужасное 404
или загрузить мои php-файлы.
Ответ №1:
Проверьте свой .htaccess
файл, возможно, все URLs
теперь сопоставлены с index.php
файлом WordPress.
Комментарии:
1. Вот мой файл .htaccess # BEGIN WordPress <IfModule mod_rewrite.c> RewriteEngine на базе перезаписи / RewriteRule ^index.php $ — [L] RewriteRule ^.*магазин/изображения/(d )/???(.*)$ / wp-content/plugins/shopp/core/image.php?siid=$ 1 amp; $ 2 [QSA,L] Перезаписать второй%{REQUEST_FILENAME} ! -f перезаписать второй%{REQUEST_FILENAME} ! -d RewriteRule . /index.php [L] </IfModule> # ЗАВЕРШИТЬ WordPress
2. Все rewritrerules за исключением
RewriteRule ^index.php$ - [L]
(указывает ничего не делать, если index.php прямой доступ) должен быть после перезаписи, повторно, файлы php совпадают сами по себе, и все сломано.
Ответ №2:
Основываясь на предоставленных правилах перезаписи, я бы предложил использовать это вместо:
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^.*shop/images/(d )/???(.*)$ /wp-content/plugins/shopp/core/image.php?siid=$1amp;$2 [QSA,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
Комментарии:
1. Спасибо, но это не работает, все файлы CSS не загружаются, и даже / wp-admin / directory показывает мне 404, wp не может найти свой каталог администратора
2. И с этим РЕДАКТИРОВАНИЕМ? (продублировал условия перезаписи, поскольку они, вероятно, применимы только к следующему правилу)
3. результатом этих новых правил перезаписи является то, что все файлы css не загружаются, когда я нажимаю на ссылку на файл css в HTML-источнике браузера, он показывает мне тот же HTML-код, а не содержимое файла css, и mysite.com/wp-admin / не найдена страница start show as 404
4. Это не имеет никакого смысла. Условия перезаписи четко указывают, что любой существующий файл или папка не должны быть перезаписаны. Что, если вы удалите базу перезаписи?
5. все постоянные ссылки не работают, если я удаляю все правила, отображается direct file access: Внутренняя ошибка сервера Сервер столкнулся с внутренней ошибкой или неправильной настройкой и не смог выполнить ваш запрос. Пожалуйста, свяжитесь с администратором сервера, webmaster@mysite.com и сообщите им о времени возникновения ошибки и обо всем, что вы могли сделать, что могло вызвать ошибку. Дополнительная информация об этой ошибке может быть доступна в журнале ошибок сервера. Кроме того, при попытке использовать ErrorDocument для обработки запроса была обнаружена ошибка 404 Not Found.
Ответ №3:
Я не понимаю вопроса. Вы говорите, что создали плагин, и он неправильно вызывает файлы? (Я предполагаю, что под «прямым доступом к файлам PHP» вы подразумеваете, что не можете загрузить определенный файл, который находится в каталоге вашего плагина?)
Похоже, вы используете неправильные пути. Вы должны использовать такие вещи, как константы WP_PLUGIN_URL, которые настроены для вас через WordPress (http://codex.wordpress.org/Determining_Plugin_and_Content_Directories ) — то есть это звучит не как проблема с .htaccess, это звучит как неправильное кодирование в плагине.
Конечно, не зная, какой код вы используете, трудно сказать, в чем может быть проблема.
Комментарии:
1. Я использую этот код, и он загружает страницу 404 моего сайта <iframe src=»<?php echo WP_PLUGIN_URL ?>/myplugin/direct.php «></iframe>
2. когда вы печатаете_r( WP_PLUGIN_URL . ‘/myplugin/direct.php ‘); указывает ли он правильный путь к файлу, который вы хотите? Если да, то что в direct.php файл? Вы проверили свои журналы ошибок, чтобы узнать, что происходит? Я также не уверен на 100%, что вы можете загрузить файл плагина подобным образом. Где этот код? Это в файле шаблона? вы пытаетесь использовать его в файле вне установки WP? Или вы пытаетесь поместить это в сообщение?