的notfound.html未找到

很确定基于各种例子(像这里的一个)我设置正确的事情了:

1)我在网站的根目录下创建一个文件'的notfound.html“

2)我运行XAMPP,即得。 Apache Web服务器,所以根据我读过的东东,阿帕奇会在一个站点的根目录中的notfound.html时不存在的页面在浏览器中键入,如www.mysite.com/NotAValidPage。 HTML并使用的notfound.html为404错误信息

下面是我试过和每次尝试的结果:

1test)我把我自己的notfound.html在我的网站的根目录,然后输入一个不存在的页面

1result)我的notfound.html不使用,而是从(我猜的)我的Web服务器默认的404错误,将出现并说:

Object not found! The requested URL was not found on this server. If you entered the URL manually please check your spelling and try again. If you think this is a server error, please contact the webmaster. Error 404 localhost 2/14/2012 9:11:29 AM Apache/2.2.17 (Win32) mod_ssl/2.2.17 OpenSSL/0.9.8o PHP/5.3.4 mod_perl/2.0.4 Perl/v5.10.1

2检验)我旁边增加了一个.htaccess文件到我的网站的根文件夹,并添加这个.htaccess文件中这一行:

ErrorDocument 404 /notfound.html

然后我输入一个不存在的页面到我的浏览器。

2result)我还看到一个默认的404错误页面,而不是我的notfound.html,只是这一次的默认错误页说:

Not Found The requested URL /mysite.com/indsadfaex.php was not found on this server. Additionally, a 404 Not Found error was encountered while trying to use an ErrorDocument to handle the request.

ErrorDocument的404的notfound.html:3test),然后我通过删除“/”我的自定义404错误页面的文件名 ​​的名称如下修改之前,我的.htaccess文件

3result)现在,当我输入我的网站名称,后跟一个不存在的页面,我再也看不到默认的404错误页面-浏览器窗口除了在左上角以下完全空白:

notfound.html

不知道这里做什么,好像我错过了一些微妙的 - 任何想法真的赞赏。

编辑:我怀疑它的问题,但也有在我的重定向的情况下.htaccess文件2其他语句:

RewriteEngine on RewriteRule ^([^/\.]+)$ theHandlerPage.php?theArgumentPassedIn=$1 [L]

这里的正则表达式只是说'去键入的URL的尽头并匹配字符的连续字符串当且仅当没有'/'或''。 在字符的连续流,然后通过$ _GET [theArgumentPassedIn']的方式把它们放到该文件theHandlerPage.php。

我不认为这重写规则即将在这里发挥作用,因为它不会在一个糟糕的页面名称相匹配,如因mysite的/ badpage.html'。“ 在badpage.html。



好了 - 我发现了一个有点意外性的。

1)我将我的notfound.html错误文件到我的网站的父目录-而该文件位于前c:/xampp/htdocs/mysite/notfound.html ,我现在已经搬到这个文件到c:/xampp/htdocs/notfound.html

2)然后,我用的ErrorDocument 404 /notfound.html我里面.htaccess文件,该文件位于c:/xampp/htdocs/mysite/.htaccess

而现在,当我在浏览器栏输入mysite/aBadfilename.html ,我404的notfound.html是显示了罚款。

但是,这是行不通的。 我不能让我notfound.html驻留在我的网站的父目录,因为我需要为每一个我开发的网站不同的notfound.html。 我一定能够把我的网站的notfound.html在其文件夹的空间,即得。 里面c:/xampp/htdocs/mysite.

由于c:/xampp/htdocs是服务器上所有网站的根文件夹。

为什么我的Web服务器找我现场的notfound.htmlc:/xampp/htdocs根目录而不是c:/xampp/htdocs/mysite ? 毕竟,我输入的mysite / badfile.html使Web服务器(在我看来)应该明白的notfound.html是在c:/xampp/htdocs/mysite文件夹的空间。

--------------解决方案-------------

您是否在使用虚拟主机?
如果是的话,我觉得有问题,请打开您httpd-vhosts.conf ,寻找一条线在哪里的DocumentRoot C:/xampp/htdocs/bla/blah/mysite/和全路径写下来到主机,如果它不'T工作,目录路径玩。 希望它帮助。

分类:阿帕奇 时间:2015-03-14 人气:2
分享到:

相关文章

Copyright (C) 55228885.com, All Rights Reserved.

55228885 版权所有 京ICP备15002868号

processed in 1.126 (s). 10 q(s)