#Apache服务器URL重写
先看下Apache重写的参数
* ```R[=code](force redirect)```强制外部重定向.强制在替代字符串加上http://host[:port]/ 前缀重定向到外部的URL.如果code不指定,将用缺省的302 HTTP状态码。
* F(force URL to be forbidden)禁用URL,返回403HTTP状态码。
* G(force URL to be gone) 强制URL为GONE,返回410HTTP状态码。
* P(force proxy) 强制使用代理转发。
* L(last rule) 表明当前规则是最后一条规则,停止分析以后规则的重写。
* N(next round) 重新从第一条规则开始运行重写过程。
* C(chained with next rule) 与下一条规则关联
如果规则匹配则正常处理,该标志无效,如果不匹配,那么下面所有关联的规则都跳过。
* T=MIME-type(force MIME type) 强制MIME类型
* NS (used only if no internal sub-request) 只用于不是内部子请求
* NC(no case) 不区分大小写
* QSA(query string append) 追加请求字符串
* NE(no URI escaping of output) 不在输出转义特殊字符
* 例如:RewriteRule /foo/(.*) /bar?arg=P1=$1 [R,NE] 将能正确的将/foo/zoo 转换成/bar?arg=P1=zoo
* PT(pass through to next handler) 传递给下一个处理,
* 例如:
RewriteRule ^/abc(.*) /def$1 [PT] # 将会交给/def规则处理
Alias /def /ghi
* S=num(skip next rule(s)) 跳过num条规则
* E=VAR:VAL(set environment variable) 设置环境变量
##使用文件夹下的.htaccess文件。
实用例子:
实现隐藏index.php
Options +FollowSymlinks -Multiviews
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L]
实现目录固定结尾的参数值跳转
如:匹配http://host/test/XXX_code 跳转
RewriteRule ^(.*)([_]?)code$ /test/index.php?s=$1$2code [QSA,PT,L]
- 说明
- PHP
- 数组操作
- file操作的常用方法
- PHP字符串输出之Heredoc说明
- require(_once)和include(_once)的理解
- file_get_contents和curl
- PHP的json问题
- PHP提高效率的几点
- PHP/异步任务队列处理
- HTTP_AUTHORIZATION
- php中 intval和string的一些转换问题
- 变量在 PHP7 内部的实现
- 关于exit和die
- php获取微秒
- php高性能日志扩展seaslog的使用
- Curl使用说明
- echo的数据自动增加换行或其他
- php-memcache
- 根据18位数校验前17位身份证号是否正确
- 将一个老项目升级到php7
- ord获取ASCII码
- 框架
- thinkphp5
- THINKPHP5常见问题
- Laravel5学习笔记
- homestead总结
- easywechat学习笔记
- wechat公众号
- 获取用户信息的实现方式
- 前端
- HTML
- CSS
- 伪类和伪元素的区别
- Bootstrap使用
- Javascript
- Javascript梳理总结
- 巧用history.pushState无刷新改变页面url
- jquery日期时间选择器组件datepicker的使用说明
- 基本操作
- 比较
- 后端/Nodejs
- 多nodejs版本管理
- 小功能
- URLAPI
- 二维码转换
- 地图URL直接实现导航
- 字体生成
- 网址长短互转
- 百度短网址
- Fiddle模拟测试百度短网址api
- Composer备忘录
- composer安装配置
- Composer 错误集锦
- Composer使用自己的库
- GIT简单操作命令
- Git记住密码
- git 显示错误详情和请求信息
- 工具软件
- PHPStorm
- VI简单操作命令
- ATOM
- browser提示shockwave false加载失败
- Cmder使用说明
- Windows软件总结
- 浏览器插件
- 支付
- 微信支付
- 支付宝
- 银联支付
- Ping++
- Beecloud支付
- Map
- 百度地图BaiduMap
- RESTfulAPI设计实践
- HTTP
- GET/POST 的请求大小
- 常见状态码说明
- Ubuntu
- 命令行中的>>和>的区别
- 笔记
- 正则
- Hybrid的使用记录
- H5+和mui
- HTML5+和mui使用
- APP开发过程中蓝牙问题总结
- Cordova的使用
- 服务器
- URL重写
- 目录限制访问
- 软链接和硬链接
- 票务系统对接资料和总结
- qunar去哪儿门票对接
- qunar对接case介绍及错误代码
- tuniu门票对接总结
- 途牛小结
- 联合票务对接途牛文档说明
- 途牛签名流程
- meituan美团
- 大众点评
- 联合票务
- 安卓使用技巧
- 安卓清理电池信息
- 安卓6.0使用时发现的问题
- 数据库
- 数据库mysql
- 分页数据优化
- 手机号用不到索引的问题分析
- mysql配置的localhost和127.0.0.1的区别
- mysql5.5升级mysql5.7
- 数据库MongoDB
- Redis使用说明
- phpredis使用说明
- 环境变量
- Twig使用
- 经典的文章
- 用超人的故事讲解 IoC(控制反转) 和 DI(依赖注入)