欢迎来到Heck's Blog,专业承接拿站、企业建站、仿站、网上商城架构、门户网站搭建、空间域名注册、软件定制等项目。关注网络安全,因为专注,所以专业,懂得放弃,才能收获。有事请发邮件至i@heckjj.com,请记住本站网址:http://www.heckjj.com,多谢。
10月17
分享一下apache服务器使用htaccess实现301重定向的规则代码。由于nginx服务器对基于动态php语言的wordpress程序执行效率大打折扣,导致服务器cpu常常被php-fpm进程占满卡死,于是我将指南者博客的运行环境切换成了apache,瞬间解决了这个老大难问题!
我的个人博客绑定了很多个域名,但主域名一直是www.heckjj.com,所以需要将其他域名通过301重定向到主域名来避免博客权重的流失。apache与nginx设置301重定向还是有相当大的区别,apache服务器只需将重定向代码保存为名为空后缀为.htaccess的文件,并保存在网站根目录即可。
例子一:
RewriteEngine On
RewriteCond %{HTTP_HOST} !^www.heckjj.com$ [NC]
RewriteRule ^(.*)$ http://www.heckjj.com/$1 [L,R=301]
以上代码实现了:凡是通过非 www.heckjj.com (第2行中的 www.heckjj.com )访问过来的域名,均会转向到 www.heckjj.com(第3行中的 www.heckjj.com)这个域名;
参数说明:
其中第2行中的 !^www.heckjj.com$ :
! 叹号表示域名的开始;
^ 尖号表示非,即不是以 xxx 开头的;
$ 符号表示域名的结尾。
由此可以看出 !^www.heckjj.com$ 表达的意思就是访问到你服务器的域名不是完全与 www.heckjj.com 相同的域名,就会满足判断的条件,进而触发跳转的操作了。
我的个人博客绑定了很多个域名,但主域名一直是www.heckjj.com,所以需要将其他域名通过301重定向到主域名来避免博客权重的流失。apache与nginx设置301重定向还是有相当大的区别,apache服务器只需将重定向代码保存为名为空后缀为.htaccess的文件,并保存在网站根目录即可。
例子一:
RewriteEngine On
RewriteCond %{HTTP_HOST} !^www.heckjj.com$ [NC]
RewriteRule ^(.*)$ http://www.heckjj.com/$1 [L,R=301]
以上代码实现了:凡是通过非 www.heckjj.com (第2行中的 www.heckjj.com )访问过来的域名,均会转向到 www.heckjj.com(第3行中的 www.heckjj.com)这个域名;
参数说明:
其中第2行中的 !^www.heckjj.com$ :
! 叹号表示域名的开始;
^ 尖号表示非,即不是以 xxx 开头的;
$ 符号表示域名的结尾。
由此可以看出 !^www.heckjj.com$ 表达的意思就是访问到你服务器的域名不是完全与 www.heckjj.com 相同的域名,就会满足判断的条件,进而触发跳转的操作了。
8月9
使用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规则都不会写。。。于是只好通过搜索引擎查找类似规则进行修改。。。
当我上传指定txt文件至指定目录(一般为网站根目录)后百度提示验证失败,无法找到该文件。直接在浏览器栏输入地址,IE同样显示404错误,并且该404错误页面并非我之前通过.htaccess文件自定义的错误页面。
一开始首先想到的是文件名大小写问题,但不管如何修改主文件名,依然无法访问,提示404错误。再考虑Linux主机文件权限问题,也没有异常。检查.htaccess文件中的防盗链设置,结果正常,并且robots.txt中也没有抓取限制。测试了一下目录中的其它txt文件,比如robots.txt,均可以正常读取。
无奈,在搜索引擎进行相关检索,未找到相关信息,在百思不得其解之下,又将文件扩展名修改为.html,结果竟然可以访问到了!不知道是不是000webhost作了一些限制,限制含有html代码的txt文件的访问?偶也不懂,直接漂过。。。
既然扩展名为.txt时你死活要给我来个404错误,那么我改还不行么?000webhost免费主机支持rewrite规刚,那么我将该文件扩展名改为.html,并利用rewrite模块重写文件名不就可以了?
悲剧的是,哥们我实在是白得不能再白,连rewrite规则都不会写。。。于是只好通过搜索引擎查找类似规则进行修改。。。





