[php]Rewrite伪静态中的字符含义与写法
[php]Rewrite伪静态中的字符含义与写法
Rewrite中的字符含义
- -rewriteengine on/off
- 设置apache是否启用重写引擎
- -rewriterule
- 作用: 为重写引擎定义重写规则
- 格式: rewriterule 正则表达式 替代字符串 [标记]
- 正则表达式元字符:
- . 任意一个单字符
- [chars] 字符类: "chars"中的任意一个字符
- [^chars] 字符类: 不在"chars"中的字符
- text1|text2 选择: text1 或 text2
- ? 前面的字符出现 0 或 1 次
- * 前面的字符出现 0 或 N 次(N > 0)
- + 前面的字符出现 1 或 N 次(N > 1)
- ^ 锚定到行首
- $ 锚定到行尾
- \字符 转义字符
- 标记: C 链接到下一条件规则
- F 强制禁止URL
- G 强制废弃URL
- L 结尾规则
- N 跳转到开头、从开再来
- NC 忽略大小写
- P 强制为代理
- R 强制为重定向
- 实例:rewriterule ^/$ http://bbs.51osos.com [R,L]
- //对网站根目录的访问请求全转向http://bbs.51osos.com
- -rewritecond
- 作用:定义重写发生的条件
- 格式:rewritecond 字符串 正则表达式 [标记]
- 字符串所包含一些特殊字符:
- a. $N 反向rewriterule中的分组
- b. %N 反向rewritecond中的分组
- c. 服务器变量
- %{HTTP_USER_AGENT} 客户机信息,包括操作系统和浏览器信息
- %{HTTP_HOST} 请求的主机名
- %{REMOTE_ADDR} 客户机IP地址
- %{REMOTE_HOST} 客户机的主机名
- %{REMOTE_PORT} 客户机连接服务器所有端口
- %{REQUEST_METHOD} 客户机的请求方法
- %{REQUEST_FILENAME} 客户机的请求的文件名
- %{REQUEST_URI} 客户机请求URI
- %{DOCUMENT_ROOT} 服务器的站点主目录
- %{SERVER_NAME} 服务器的名称
- %{SERVER_ADDR} 服务器的IP地址
- %{SERVER_PORT} 服务器的端口号
- 特殊比较符号:
- < 小于
- > 大于
- = 等于
- -d 判断是不是存在的目录
- -f 判断是不是存在的普通文件
- -s 判断是不是为非空的普通文件
- -x 判断是不是为可执行的文件
- -l 判断是不是为链接文件
- -U 判断是不是有效的URL
- 标记:
- -NC 忽略大小写
- -OR 或
- 实例:rewritecond %{REMOTE_ADDR} ^192.168.3.1
- -rewritebase
- 作用:设置目录级重写的基准URL
- 格式:rewritebase URL-PATH
热门文章推荐
- [php]优酷真实视频地址解析算法
- [Dz]discuz手机版支持视频播放的方法
- [PHP]php加密js解密的方法实例
- [php]用PHP打印出前一天的时间格式
- [PHP]mpeg,mp3,avi的ffmpeg的php转换类
- [php]php中3DES加密一个非常有用的3des加密
- [PHP]php.ini修改上传文件的大小限制处理方法
- [php]用过的最好用的php分页类源代码
请稍候...