我已经构建了一些主题并注意到404页面,一旦上传到我的服务器。永远不会出现他们总是在我的localhost设置上做,甚至其他人的主题都有效。
我认为没有理由不工作,我已经为漂亮的永久链接启用了mod_rewrite,但404重定向似乎不想工作。
这是一个已知问题吗?
是Streamline.net的糟糕服务器吗?
有人可以帮忙吗?
答案 0 :(得分:1)
您可以尝试在.htaccess中设置自己的错误文档,这可能会覆盖您的主机设置,并指向名为“error”的静态wordpress页面或主题中的404.php
ErrorDocument 401 http://mydomain.com/error/
ErrorDocument 403 http://mydomain.com/error/
ErrorDocument 404 http://mydomain.com/error/
ErrorDocument 500 http://mydomain.com/error/
编辑:您还可以在主题的404.php文件中进行重定向(是的,这很难......)到您的静态错误页面:<?php
Header("Location: http://mydomain.com/error/");
?>
如果这不起作用,我不知道。
答案 1 :(得分:1)
遇到与Streamline相同的问题。我想这是由于这个托管1.3使用的apache版本。
答案 2 :(得分:1)
如果您的主题模板中已有404.php文件,则不创建一个。然后按照以下步骤操作。
第一步:在任何编辑器中打开现有的404.php文件,或在主题目录中创建新文件。
第二步:在404.php文件中复制/粘贴下面提供的代码(确保你的404.php文件为空)
//404 Redirect to home in WordPress.
//Sara Domini
//301 Permanently Redirect
//http://2experts.net
header("HTTP/1.1 301 Moved Permanently");
header("Location: ".get_bloginfo('url'));
exit();
对于我和其他作品如魅力:))
答案 3 :(得分:0)
这种情况正在发生,这是相当奇怪的。如果WordPress正在使用非常永久链接,那么Apache正在做它的工作 - 重写任何实际上不存在于WordPress的URL。
然后由WP决定请求是否与任何内容不匹配,如果是,则显示404。
也许Streamline 搞砸了这一点,通过阅读WP推出并摆弄输出的'404 Not Found'标题?