.htacce文件玩转Rewrite_PHP技巧_黑客防线网安服务器维护基地--Powered by WWW.RONGSEN.COM.CN

.htacce文件玩转Rewrite

作者:黑客防线网安PHP教程基地 来源:黑客防线网安PHP教程基地 浏览次数:0

本篇关键词:文件代表字符rewrite
黑客防线网安网讯:  刚玩网页的时候,写的都是静态页http://uicss.cn/about.htm这样的结构。    后来想换成http://uicss.cn/about/    但是又因为不熟悉rewrite,做了如下的调整,手动建立了一堆的...
  刚玩网页的时候写的都是静态页http://uicss.cn/about.htm这样的结构
  
  后来想换成http://uicss.cn/about/
  
  但是又因为不熟悉rewrite做了如下的调整,手动建立了一堆的文件夹:
  
  这样的目录结构,维护起来相当麻烦每次新加一个页面,都要开一个文件夹。
  
  其实采用左边那套结构部署上去,服务器稍做设置,就可以支持我们想要的URL效果。
  
  如何玩rewrite
  
  首先看看自己的服务器是否支持.htaccess
  
  如果支持这货,就不用每次写条规则就重启一次服务器了,便于测试。
  
  redirect301/test.htmhttp://uicss.cn/
  
  成功的话,当你访问xxx.com/test.htm的时候,会自动跳到我的博客。
  
  不成功的话,需要开启一下.htaccess:
  
  打开confhttpd.conf,查找#LoadModulerewrite_module,将#号去掉,加载该模块
  
  打开confextrahttpd-vhosts.conf,查找AllowOverrideNone,将None变更为All
  
  环境准备完成后,还需要对“模式匹配”中特殊字符在rewrite的解读做一下了解:
  
  *代表前面0或更多个字符
  
  +代表前面1或更多个字符
  
  ?代表前面0或1个字符
  
  ^代表字符串的开始位置
  
  ^在方括号里代表“非”,例如[^/]代表非斜杠。
  
  $代表字符串结束的位置
  
  .代表任何字符(也就是通配符)
  
  取消后面字符的特殊意思,转为原义字符。
  
  ——这部分的理解出自《SEO艺术》第六章末
  
  开始干吧,打开.htaccess的rewrite
  
  RewriteEngineon
  
  把xxx.htm文件替换为xxx/
  
  RewriteRule^(.*)/$/$1.htm[L]
  
  再给一个例子加深理解,这是将服务器上的xxx.php文件替换成xxx.html
  
  RewriteRule^(.*).html$/$1.php[L]
  
  更多用法:
  
  让所有访问www.uicss.cn/xxx/的用户跳转到uicss.cn/xxx/
  
  RewriteCond%{HTTP_HOST}^www.uicss.cn[NC]
  
  RewriteRule^(.*)$http://uicss.cn/$1[L,R=301]
  
  对指定目录开启转向的代码:
  
  RewriteBase/top/
  
  带搜索参数的转向:
  
  RewriteRule^search/(.+)?$/index.php?s=$1[QSA,L]
  
  目录末尾补斜线:
  
  RewriteRule^(.+[^/])$/$1/[R]
    黑客防线网安服务器维护方案本篇连接:http://www.rongsen.com.cn/show-17694-1.html
网站维护教程更新时间:2012-09-21 05:23:45  【打印此页】  【关闭
我要申请本站N点 | 黑客防线官网 |  
专业服务器维护及网站维护手工安全搭建环境,网站安全加固服务。黑客防线网安服务器维护基地招商进行中!QQ:29769479

footer  footer  footer  footer