Нужна помощь с правилами .htaccess ReWrite - PullRequest
0 голосов
/ 12 октября 2009

Я использую Wordpress и имею следующую ссылку /%category%/%postname%. Это дает мне удобные URL-адреса, такие как http://www.example.com/something/.

С этой постоянной ссылкой я не смогу получить прямой доступ к php-файлам, например, http://www.example.com/something/myfile.php.

Мне нужно написать правило перезаписи, которое дает мне доступ к / include / myfile.php . Может ли кто-нибудь помочь мне, пожалуйста? :)

Вот мой текущий файл .htaccess:

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

Обновление

Хорошо, я все заработал.

Я делал это неправильно с самого начала. Я использовал «виртуальный» путь вместо физического.

Вместо /mysite/include/myfile.php я должен использовать /wp-content/themes/mytheme/include/myfile.php

Возможно, я мог бы также добавить RewriteCond% {REQUEST_URI}! Myfile.php, который исключил бы myfile.php из правил перезаписи. Я не проверял это все же.

1 Ответ

1 голос
/ 12 октября 2009

Ну, ваши правила переписывания выглядят хорошо.

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d

означает, что /blog/index.php не будет серверным, если% {REQUEST_FILENAME] является физическим файлом или каталогом.

Подробнее здесь .

Вы уверены, что используете правильные пути к файлам?

Файл, который вы хотите запросить, должен находиться в /blog/include/myfile.php.

.

Проверьте ваш error.log на apache для любых связанных сообщений.

...