当我的服务器主机阻止 .htaccess 时,WordPress 404 页面如何起作用?

当我的服务器主机阻止 .htaccess 时,WordPress 404 页面如何起作用?

我有两个网站运行着 WordPress,404 页面可以正常工作,但当我尝试创建自己的 .htaccess 时,它却不起作用,并重定向到我的网站托管商的 404 页面。此外,.htaccess 是付费的,而我使用的是免费计划。

答案1

当我的服务器主机阻止 .htaccess 时,WordPress 404 页面如何起作用?

WordPress 404 页面完全由 WordPress/PHP 生成并提供。它们与服务器错误文档无关。

但是当我尝试创建自己的 .htaccess 时,它不起作用并重定向到我的网络主机的 404 页面。

默认服务器错误文档可能由您的主机在服务器配置中定义(您无权访问)。或者,您只是看到 Apache 的默认错误文档?

但是您的 WordPress 404 页面怎么了?

更新:这里有一个例子:Wordpress:点击和非 wordpress:点击。

看过“非 WordPress”网站和“网络主机”404 页面的示例后,似乎您的主机在您的域上定义了一个简单的错误文档(您无法覆盖),该文档向不同域上的网络主机的 404 页面发出元刷新。

主机可能已将其定义为服务器配置中的单个指令,类似于:

ErrorDocument 404 "<html><head><meta http-equiv=\"refresh\" content=\"0;http://errors.biz.nf/404.php\" /></head><body></body></html>"

对您网站上不存在的文件的初始请求将返回 404 和以下响应主体(为清楚起见添加了换行符):

<html><head>
<meta http-equiv="refresh" content="0;http://errors.biz.nf/404.php" />
</head><body></body></html>

浏览器收到此信息后,会立即向http://errors.biz.nf/404.php(不同的域)发出第二个请求,该请求也会发出 404(这是网络主机的 404 页面)。

这无疑是“免费计划”的一个不幸的警告。

相关内容