Файлы, заканчивающиеся на .php в каталоге wp-content / plugins /, рассматриваются как не найденные - PullRequest
1 голос
/ 18 ноября 2010

По какой-то странной причине каждый файл, к которому я пытаюсь получить доступ в своей установке WordPress внутри каталога wp-content / plugins / и под ним, возвращает ошибку 404 на основе WordPress.Файлы появляются в списках каталогов ...

примерно так: http://technologysolved.ca/wp-content/plugins/store-locator/js/

при нажатии других типов файлов (.js и .html) они работают правильно.Но при нажатии на файл вроде: store-locator-js.php WordPress возвращает ошибку стиля 404.

Это происходит со всеми файлами .php в каталоге плагинов и ниже.

IПолагаю, это может быть какая-то ошибка .htaccess more mod_rewrite, но я не уверен.

Мой файл .htaccess следующий ...

RewriteEngine On
RewriteBase /

RewriteRule ^index\.php$ - [L]

RewriteRule ^files/(.+) wp-includes/ms-files.php?file=$1 [L]

RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]
RewriteRule . index.php [L]

Любая помощь будет принята с благодарностьюСпасибо!

Ответы [ 2 ]

2 голосов
/ 18 ноября 2010

Прежде всего, вы никогда не должны получать доступ к файлам PHP в каталоге подключаемых модулей непосредственно в браузере.Тот факт, что вы даже можете видеть представление каталога в браузере, является проблемой безопасности вашего сайта!

Но, скажем так, ради аргумента, все работает нормально и вам все еще нужен прямой доступ через браузерв этот файл.Даже в этом случае прямой доступ к файлу PHP, подобному этому , не будет запускать WordPress, а это значит, что у вас будет нет доступа к вашему блогу, вашей теме, сообщениям или API WordPress.

Помните, PHP предназначен для выполнения на сервере - это код на стороне сервера .JS и HTML считаются текстовыми документами до тех пор, пока они не будут интерпретированы браузером - они являются клиентским кодом .Вы должны не иметь возможность просматривать содержимое файла PHP, щелкнув его имя в представлении каталога.Это попытается выполнить код, содержащийся в файле на сервере.В вашем случае файл плагина также ссылается на WordPress (возможно, загружает файл начальной загрузки) и выдает ошибку.

Так что нет, это не ошибка в .htaccess или mod_rewrite.

0 голосов
/ 19 ноября 2010

Включите ведение журнала, чтобы видеть, что происходит.

http://httpd.apache.org/docs/current/mod/mod_rewrite.html#rewritelog

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...