我在根目录中安装了Wordpress,并使用permalinks正确配置了它。
除了Wordpress博客之外,我还有一个功能完备的定制开发的php应用程序,有几个页面。我不想显示。任何自定义页面的php扩展,但现在所有自定义php页面都出现404个错误。
http://url/blog-title-here (word press页-works)
http://url/register (自定义php页面-结果为404)
这是我的。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>
下面是我在httpd中的内容。形态
<Directory />
Options FollowSymLinks
AllowOverride All
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule (.*) $1.php [L]
</Directory>
最合适的回答,由SO网友:P-S 整理而成
(编辑)在#Begin Wordpress之外使用自定义规则(归功于Tim Malone)
您可以检查文件是否存在于根目录中,并在Wordpress规则生效之前加载它:
# check for a file, i.e register.php
# load it if found and stop processing the rest of the rules with the [L] flag
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{DOCUMENT_ROOT}/$1.php -f
RewriteCond %{REQUEST_URI} !/$1.php
RewriteRule ^(.*) /$1.php [L]
</IfModule>
# 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
http://url/register 然后将打开寄存器。根目录中的php文件。
如果找不到该文件,将处理Wordpress规则。