当前位置: 首页 > news >正文

广州 网站建设 制作厦门专业网站排名推广

广州 网站建设 制作,厦门专业网站排名推广,墨鱼 主题 wordpress,北京seo百科一、开启重写模块 apache 的配置文件 httpd.conf 开启 LoadModule rewrite_module modules/mod_rewrite.so 二、配置重写规则 1. apache 主配置文件 httpd.conf (服务器级别,需要拥有服务器的管理权限) 2. 使用在httpd.conf里定义的虚…

一、开启重写模块

apache 的配置文件 httpd.conf   开启   LoadModule rewrite_module modules/mod_rewrite.so

二、配置重写规则

1. apache 主配置文件 httpd.conf (服务器级别,需要拥有服务器的管理权限)

2. 使用在httpd.conf里定义的虚拟主机配置中

3. 目录下 .htaccess 文件中(目录级http://www.haolizi.net/别,作用于当前目录项目)

如果是使用  .htaccess 需要在主配置文件中对网站所在目录定义以下内容

<Directory /var/www/>Options Indexes FollowSymLinksAllowOverride All   Require all granted
</Directory>

//一般情况下是 AllowOverride  None  改成 All  后即表示整台服务器上都支持URL规则重写,apache服务器要读取每个项目目录下的  .htaccess 文件  ,如果没有这个文件或者没有定义任何关于url的规则就不会有效果

修改为 all 后需要重启 apache   #sudo /etc/init.d/apache2 restart

重启后或许会报505错误,解决方法  #sudo a2enmod rewrite      #sudo service apache2 restart

虚拟主机配置示例:

<VirtualHost *:80>
    #网站目录,如果在www目录下的php目录,下面    #就填写F:/www/php
    DocumentRoot "D:/phpstudy/www" 
    #域名
    ServerName  www.baidu.com
    #这里配置默认首页
    DirectoryIndex index.html index.htm index.php
    <Directory />
    Options FollowSymLinks
    #不允许别人修改我们的页面,为all 时 .htaccess 文件才生效
    AllowOverride None
    #设置访问权限
    order allow,deny
    Allow from all
    </Directory>   
</VirtualHost>

/usr/local/apache/conf/httpd.conf  配置

      options Indexes followsymlinks    #翻译后为  选项索引跟随链接
      allowoverride all                              #允许重写
      rewriteengine on                             #重写引擎
      rewritebase / 
      rewriterule ^(.*)$ index.html [R=301] 
rewritebase / 的作用是如果在下面的rewriterule定义中被重写后的部分 (此处为文件名index.html) 前面没有 /,则是相对目录,相对于这个rewritebase后面的定义也就是 /usr/local/apache/htdocs/index.html ,否则,如果此处没有 rewritebase / 这一项,则被重写成http://127.0.0.1/usr/local/apache/htdocs/manual/index.html 显然是不正确的。 通常不用写 rewritebase  /  这一项,而直接在rewriterule ^(.*)$  /index.html [R=301]  写 / 就可以,或者是 rewriterule ^(.*)$ http://127.0.0.1/index.html [R=301] 

还有一些选项:

RewriteCond %{HTTP_HOST} !^www.baidu.com [NC] #声明客户端请求的主机中前缀不是www.baidu.com,其中 [NC] 的意思是忽略大小写 
RewriteCond %{HTTP_HOST} !^127.0.0.1 [NC] #声明客户端请求的主机中前缀不是127.0.0.1,其中 [NC] 的意思是忽略大小写 
RewriteCond %{HTTP_HOST} !^$ #声明客户端请求的主机中前缀不为空 

RewriteRule ^(.*) http://www.pdanda.com/ [L] #含义是如果客户端请求的主机中的前缀符合上述条件,则直接进行跳转到http://www.pdanda.com/,[L]意味着立即停止重写操作,并不再应用其他重写规则。这里的 .* 是指匹配所有URL中不包含换行字符,()括号的功能是把所有的字符做一个标记,以便于后面的应用.就是引用前面里的 (.*)字符。

RewriteCond %{HTTP_HOST} ^wx.baidu.con [NC] 
RewriteRule ^(.*) http://www.baidu.com/ [L]

上边两行的意思是将访问的网络地址是wx.baidu.com 的时候跳转到 http://www.baidu.com

 .htaccess  文件

RewriteEngine On   #重写引擎  On 打开,如果为 off 则重写不起作用,不用再去注释掉下方的重写规则
RewriteMap lowercase int:tolower
RewriteCond ${lowercase:%{SERVER_NAME}} ^[a-z0-9]+.eact.com.cn$    #重写条件
RewriteRule ^(.+) ${lowercase:%{SERVER_NAME}}$1 [C]     #重写规则

使用 .htaccess 前需要把 httpd.conf 中的  AllowOverride 设为 all

Apache Rewrite规则的书写 

#当访问任何以t_开头,以.html结尾的文件时,将$1用与(.*)匹配的字符替换后,访问相应的test.php页面 
RewriteRule ^/t_(.*).html$ /test.php?id=$1

#当我们访问的地址不是以www.163.com开头的,那么执行下一条规则 
RewriteCond %{HTTP_HOST} !^www.163.com [NC] 
RewriteRule ^/(.*) http://www.163.com/ [L] 

Apache Rewrite规则修正符 
1) R 强制外部重定向 
2) F 禁用URL,返回403HTTP状态码。 
3) G 强制URL为GONE,返回410HTTP状态码。 
4) P 强制使用代理转发。 
5) L 表明当前规则是最后一条规则,停止分析以后规则的重写。 
6) N 重新从第一条规则开始运行重写过程。 
7) C 与下一条规则关联 

如果规则匹配则正常处理,以下修正符无效 
8) T=MIME-type(force MIME type) 强制MIME类型 
9) NS 只用于不是内部子请求 
10) NC 不区分大小写 
11) QSA 追加请求字符串 
12) NE 不在输出转义特殊字符 \%3d$1 等价于 =$1

重写中设计到的特殊字符的含义【与正则表达式有些相似】

* 代表前面0或更多个字符

+ 代表前面1或更多个字符

? 代表前面0或1个字符

^ 代表字符串的开始位置

$ 代表字符串结束的位置

。为通配符,代表任何字符

\将跟在其后的字符还原为字符本身,例如“\+”代表的就是“+”,而非其它意思。

^在方括号里表示非的意思。例如[^.]代表非通配符。

文件不存在时的重定向

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule .? /404.php [L]

这里   -f  匹配的是存在的文件名,-d  匹配的存在的路径名。这段代码在进行404重定向之前,会判断你的文件名以及路径名是否存在,也就是在文件名和目录不存在的时候跳转404。你还可以在404页面上加一个?url=$1参数:

RewriteRule ^/?(.*)$ /404.php?url=$1 [L]

伪静态

RewriteEngine on

RewriteRule ^test([0-9]*).html$ /index.php?id=$1

将.html后缀名转换成.php

RewriteRule ^/?([a-z/]+)\.html$ $1.php [L]

http://www.15wanjia.com/news/192654.html

相关文章:

  • 如何将网站变成免费wordpress 欢迎插件
  • 免费网站推广网站破解版提交网站入口
  • 深圳求做网站简述获得友情链接的途径
  • 怎么才能百度到自己的网站济南建网站送400电话
  • 深圳龙华大浪做网站公司你就知道首页
  • 装修平台自己做网站有几个seo爱站网
  • 经营范围里的网站建设西宁公司官方网站建设
  • 中山营销网站建设联系方式溧阳免费做网站
  • 国内最好用免费建站系统天德建设集团网站
  • 门户网站建设公司哪家好网站建设的技术准备
  • 关于网站建设的好处网站排名优化化
  • 深圳做app网站的公司哪家好纪检监察网站建设
  • 张家港杨舍网站制作谷歌搜索网页版入口
  • iis发布网站页面出问题山东网站备案网站
  • 韶关市建设局网站网站百度推广怎么做
  • 帆布网站做哪个app网站开发教程
  • 长沙住房和城乡建设部网站wordpress 是免费的吗
  • 网站建设学什么的wordpress 调用模板路径
  • 如何申请深圳设计公司网站网络服务类型及其采用的网络协议有哪些
  • asp网站开发技术微网站平台建设方案
  • 网站建设关键词分类野花影视大全在线西瓜
  • 网站文章编辑器郴州市宜章网站建设
  • 多平台网站设计实例install.php空白 wordpress
  • 智能模板网站建设方案西北建设有限公司网站
  • wordpress 会员登录苏州推广关键词优化
  • 韩漫网站建设动画设计培训中心
  • 免费发布信息不收费的网站网站建设模板案例响应式
  • 龙岗网站设计机构工程施工项目管理软件
  • 做网站实现自动生成pdf传媒公司注册需要多少钱
  • 西安公司企业网站建设html5网页设计培训