无法重写子目录的WordPress 404

时间:2015-09-05 作者:Shamal Sandeep

我的根目录上安装了wordpress(/var/www/html) 根目录中有一个子目录/var/www/html/manage 两个目录都有自己的.htaccess 文件。的内容.htaccess 具体如下。

/var/www/html/。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>

# END WordPress
var/www/html/manage/。htaccess(子目录)
# Start Manage .htaccess

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}\\.php -f
RewriteRule ^(.*)$ $1.php

ErrorDocument 404 /lost.php

# End Manage .htaccess
我可以重写.php 的扩展php 子目录中的文件。htaccess,但我不能使用子目录中htaccess文件中定义的自定义404。当我去www.example.com/manage/laksjdflskjf 它显示wordpress 404而不是lost.php

如何使子目录显示其404而不是wordpress 404?

2 个回复
SO网友:Mark Kaplun

wordpress htaccess的工作方式是首先查看是否有与请求位置匹配的文件,在这种情况下,它正在“运行”,否则wordpress将处理URl。基本上,你甚至不“执行”你的子目录的htaccess,除非你在那里访问一个现有的fie。

您应该做的是添加到wordpress htaccess规则中,以防止它处理子目录下的URL。

SO网友:Zeshan

WordPress有自己的404.php 主题中的文件。

如果出现页面未找到错误,WordPress将自动使用该页面

您需要编辑此文件,或者如果您的主题没有此文件,则需要创建它。

有关更多详细信息,请访问此link

相关推荐

Corrupt .htaccess file

去年夏天,我的网站运行良好。但今天,当我尝试在wp管理部分进行更新时,我在所有PHP文件上都出现了403个错误:load-styles, load-scripts, edit.php, media-new.php, 等有趣的是,我的网站前端没有问题。屏幕截图:<我读了几篇文章,建议禁用插件。我试过了,但没有解决任何问题</然后我试着删除我的.htaccess 文件,这确实修复了wp管理部分,但它破坏了前端,现在我在主页上看到403个错误!好像我只能得到其中一个。大约5分钟后,Wordpress