PHP重定向与伪静态区别


Posted in PHP onFebruary 19, 2017

什么是伪静态

伪静态是相对真静态来讲
伪静态只是把URL改成静态形式,实际上还是动态网页
伪静态有着真静态一样的SEO

什么是重定向(很常用重点学习)

将网络请求重新定一个方向,转到别的位置
分为内部和外部,区别是外部重定向时,浏览器地址栏中的URL会发生变化
http原本就支持重定向3XX
使用重定向技术实现伪静态

重定向的环境搭建

安装web服务器(apache/nginx)
加载mod_rewrite.so模块

重定向实现方式(主要有3种)

通过配置WEB服务器主配置<DIRECTORY> (生产环境)
通过.htaccess (开发环境)
通过脚本实现(外部重定向)

.htaccess重定向实现步骤

第一步:在apache主配置文件里配置allowOverride All(重启)
第二步:在.htaccess文件里配置

RewriteEngine on 
RewriteRule ^(.*)\.html$ $1.php  //匹配html改成php

WEB服务器主配置实现重定向

直接在Apache配置文件中找到<DIRECTORY>是web项目地址的加上下面代码:

RewriteEngine on 
RewriteRule ^(.*)\.html$ $1.php  //匹配html改成php

RewriteRule语法说明

RewriteRule 匹配模式 替换的URL [flags]
匹配模式支持Prel格式的正则表达式与rewrite变量
替换的URL支持匹配模式的结果与rewrite变量
多个flags用逗号隔开(例如:[R=301,C])

RewriteRule flags说明

R 强制外部重定向,浏览器地址栏url会发生变化,301永久重定向,302临时重定向,例子:[R=301],[R](代表301)
C 链接下一条规则,如果有多条规则的话,则当前加[C]的规则与下条规则成为一个整体,第一天不匹配,那么下一条就不进入
L 停止匹配后面的规则,如果有多条规则的话,当加[L]的规则匹配后,则停止后面规则的匹配
NE 不对URL的特殊字符进行转义
NC 不区分大小写
G 请求的网页失效,服务器返回410
QSA 用于在url中截取查询字符串

PHP 相关文章推荐
用PHP查询搜索引擎排名位置的代码
Jan 05 PHP
php用户注册页面利用js进行表单验证具体实例
Oct 17 PHP
PHP中设置一个严格30分钟过期Session面试题的4种答案
Jul 30 PHP
php中操作memcached缓存进行增删改查数据的实现代码
Aug 15 PHP
ThinkPHP通过AJAX返回JSON的两种实现方法
Dec 18 PHP
详解WordPress中分类函数wp_list_categories的使用
Jan 04 PHP
CI框架源码解读之URI.php中_fetch_uri_string()函数用法分析
May 18 PHP
php+Memcached实现简单留言板功能示例
Feb 15 PHP
实例讲解YII2中多表关联的使用方法
Jul 21 PHP
PHP的RSA加密解密方法以及开发接口使用
Feb 11 PHP
PHP设计模式之模板方法模式定义与用法详解
Apr 02 PHP
PHP面向对象程序设计中的self、static、parent关键字用法分析
Aug 14 PHP
PHP中empty,isset,is_null用法和区别
Feb 19 #PHP
简单谈谈 php 文件锁
Feb 19 #PHP
PHP new static 和 new self详解
Feb 19 #PHP
PHP连接MySQL进行增、删、改、查操作
Feb 19 #PHP
PHP进程通信基础之信号量与共享内存通信
Feb 19 #PHP
PHP进程通信基础之信号
Feb 19 #PHP
PHP 信号管理知识整理汇总
Feb 19 #PHP
You might like
php 随机数的产生、页面跳转、件读写、文件重命名、switch语句
2009/08/07 PHP
学习php过程中的一些注意点的总结
2013/10/25 PHP
TP5框架使用QueryList采集框架爬小说操作示例
2020/03/26 PHP
脚本安需导入(装载)的三种模式的对比
2007/06/24 Javascript
Javascript中定义方法的另类写法(批量定义js对象的方法)
2011/02/25 Javascript
JS简单实现元素复制示例附图
2013/11/19 Javascript
JavaScript 事件对象介绍
2015/04/13 Javascript
$.extend 的一个小问题
2015/06/18 Javascript
探究JavaScript中的五种事件处理程序方式
2016/12/07 Javascript
微信小程序 参数传递实例代码
2017/03/20 Javascript
JS数组操作之增删改查的简单实现
2017/08/21 Javascript
Chrome调试折腾记之JS断点调试技巧
2017/09/11 Javascript
配置node服务器并且链接微信公众号接口配置步骤详解
2019/06/21 Javascript
微信小程序实现购物车代码实例详解
2019/08/29 Javascript
解决vue更新路由router-view复用组件内容不刷新的问题
2019/11/04 Javascript
vue 清空input标签 中file的值操作
2020/07/21 Javascript
python正则表达式爬取猫眼电影top100
2018/02/24 Python
对python中的six.moves模块的下载函数urlretrieve详解
2018/12/19 Python
Python简单处理坐标排序问题示例
2019/07/11 Python
浅谈Python访问MySQL的正确姿势
2020/01/07 Python
python时间与Unix时间戳相互转换方法详解
2020/02/13 Python
Python自动采集微信联系人的实现示例
2020/02/28 Python
Django REST 异常处理详解
2020/07/15 Python
CSS3 media queries + jQuery实现响应式导航
2016/09/30 HTML / CSS
详解CSS3实现响应式手风琴效果
2020/06/10 HTML / CSS
H5调用相机拍照并压缩图片的实例代码
2017/07/20 HTML / CSS
试解释COMMIT操作和ROLLBACK操作的语义
2014/07/25 面试题
有多年工作经验的自我评价
2014/03/02 职场文书
计算机毕业生自荐信范文
2014/03/23 职场文书
美国旅游签证工作证明
2014/10/14 职场文书
企业群众路线教育实践活动心得体会
2014/11/03 职场文书
毕业设计指导教师评语
2014/12/30 职场文书
六一文艺汇演开幕词
2015/01/29 职场文书
2015清明节祭奠英烈寄语大全
2015/03/04 职场文书
政审证明范文
2015/06/19 职场文书
MySQL 如何设计统计数据表
2021/06/15 MySQL