【问题标题】:Use custom 404 page for specific subdirectory only仅对特定子目录使用自定义 404 页面
【发布时间】:2013-06-26 23:47:57
【问题描述】:
我在服务器的根目录中安装了 Wordpress。我在一个子目录中有一个单独的移动版网站(没有 CMS,只有直接的 PHP,它从数据库中提供内容)。
当我在子目录中遇到 404 错误时,会出现 Wordpress 404 页面,我希望它使用移动目录中的自定义页面。
有没有办法轻松做到这一点。 .htaccess 操作可能吗?目前它有标准的 Wordpress 东西。
任何想法都将不胜感激。
【问题讨论】:
标签:
php
wordpress
.htaccess
http-status-code-404
【解决方案1】:
如果您将 .htaccess 文件添加到您的子目录根目录,然后将其放在最上面一行。
ErrorDocument 404 /path/to/your404page
【解决方案2】:
您遇到的问题是因为 WordPress 重写系统的工作方式。 WordPress .htaccess 通过 WordPress 根目录中的 index.php 文件发送所有请求(除了 index.php 之外实际上不存在)。如果对名为 index.php 的文件发出任何请求,它也会通过根 WordPress index.php 发送。
一个简单的解决方案是将/子目录中的 index.php 文件重命名为 default.php。根据您的托管设置,它可能会通过这样做来工作。如果没有,您可以将 301 重定向添加到您的 .htaccess,将 www.domain.com/subdirectory 指向 www.domain.com/subdirectory/default.php
Redirect 301 /subdirectory http://domain.com/subdirectory/default.php
.htaccess 文件将位于您的 public_html 或公共网络根目录中。
(来自#16584)