000webhost与网站所有权验证问题 - Heck's Blog - 一瞬间的决定,往往可以改变很多,事实上,让自己成功的往往不是知识,是精神! 如果你总是为自己找借口,那只好让成功推迟。执行力,今天!

000webhost与网站所有权验证问题 不指定

Heck post in 资源共享 2012/08/09 15:05 评论(0) 阅读(2246) | |
     使用000webhost的免费主机,除了有时候网页载入速度很慢以外,其它方面感觉都还可以。然而今天向百度提交网站,在验证网站所有权时遇到了一点问题。跟Google网站管理员类似,百度验证所有权时可选择上传文件或是在首页代码中增加元标记。与Google不同的是,百度提供的文件扩展名为.txt而不是.html,问题随之而来。

  当我上传指定txt文件至指定目录(一般为网站根目录)后百度提示验证失败,无法找到该文件。直接在浏览器栏输入地址,IE同样显示404错误,并且该404错误页面并非我之前通过.htaccess文件自定义的错误页面。

  一开始首先想到的是文件名大小写问题,但不管如何修改主文件名,依然无法访问,提示404错误。再考虑Linux主机文件权限问题,也没有异常。检查.htaccess文件中的防盗链设置,结果正常,并且robots.txt中也没有抓取限制。测试了一下目录中的其它txt文件,比如robots.txt,均可以正常读取。

  无奈,在搜索引擎进行相关检索,未找到相关信息,在百思不得其解之下,又将文件扩展名修改为.html,结果竟然可以访问到了!不知道是不是000webhost作了一些限制,限制含有html代码的txt文件的访问?偶也不懂,直接漂过。。。

  既然扩展名为.txt时你死活要给我来个404错误,那么我改还不行么?000webhost免费主机支持rewrite规刚,那么我将该文件扩展名改为.html,并利用rewrite模块重写文件名不就可以了?

  悲剧的是,哥们我实在是白得不能再白,连rewrite规则都不会写。。。于是只好通过搜索引擎查找类似规则进行修改。。。


  经过反复测试之后,总算得到了可用规则,并实践成功。具体如下:

  假设需要上传的文件名为bdunion.txt,因上述原因,我们需要将其修改为bdunion.html。然后,将该文件上传至指定网站目录(以下均以根目录为例)。

  修改.htaccess文件(若无可自行建立,前提是空间支持,当然本文讨论的是000webhost的免费空间,我这里废话了),在该文件中加入以下规则:

RewriteRule ^bdunion.txt$ bdunion.html

  若原来的.htaccess文件中没有其他内容,且该文件所在目录为网站根目录,则完整的.htaccess文件内容如下:

RewriteEngine on

RewriteBase /

RewriteRule ^bdunion.txt$ bdunion.html


  通过此规则,当访问bdunion.txt文件时,将自动重定向至bdunion.html,比如网站域名为www.qeeshang.com,当访问www.qeeshang.com/bdunion.txt时,实际上访问到的是www.qeeshang.com/bdunion.html,并且浏览器地址栏不会发生变化。




来源:Heck's Blog
地址:http://www.hecks.tk/post/400/
转载时须以链接形式注明作者和原始出处及本声明,否则将追究法律责任,谢谢配合!