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 5昨天隆重推出--PHP 5/Zend Engine 2.0新特性
Oct 09 PHP
PHP中的正规表达式(二)
Oct 09 PHP
创建数据库php代码 用PHP写出自己的BLOG系统
Apr 12 PHP
延长phpmyadmin登录时间的方法
Feb 06 PHP
php 错误处理经验分享
Oct 11 PHP
phpstorm编辑器乱码问题解决
Dec 01 PHP
PHP执行linux命令常用函数汇总
Feb 02 PHP
基于PHP实现数据分页显示功能
May 26 PHP
php单链表实现代码分享
Jul 04 PHP
验证坐标在某坐标区域内php代码
Oct 08 PHP
laravel-admin 实现在指定的相册下添加照片
Oct 21 PHP
PHP For循环字母A-Z当超过26个字母时输出AA,AB,AC
Feb 16 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好代码风格的阶段性总结
2016/06/25 PHP
PHP获取redis里不存在的6位随机数应用示例【设置24小时过时】
2017/06/07 PHP
PHP实现基于PDO扩展连接PostgreSQL对象关系数据库示例
2018/03/31 PHP
Yii2.0框架实现带分页的多条件搜索功能示例
2019/02/20 PHP
繁简字转换功能
2006/07/19 Javascript
从JQuery源码分析JavaScript函数的apply方法与call方法
2014/09/25 Javascript
深入理解JavaScript系列(42):设计模式之原型模式详解
2015/03/04 Javascript
jQuery实现的背景动态变化导航菜单效果
2015/08/24 Javascript
Ionic 2 实现列表滑动删除按钮的方法
2017/01/22 Javascript
js实现日历的简单算法
2017/01/24 Javascript
jquery实现焦点轮播效果
2017/02/23 Javascript
bootstrap table实现双击可编辑、添加、删除行功能
2017/09/27 Javascript
js时间戳与日期格式之间相互转换
2017/12/11 Javascript
ajax与jsonp的区别及用法
2018/10/16 Javascript
基于Vue CSR的微前端实现方案实践
2020/05/27 Javascript
Python中的类与对象之描述符详解
2015/03/27 Python
教大家使用Python SqlAlchemy
2016/02/12 Python
python对离散变量的one-hot编码方法
2018/07/11 Python
Python时间序列处理之ARIMA模型的使用讲解
2019/04/02 Python
Python实现制度转换(货币,温度,长度)
2019/07/14 Python
python 一篇文章搞懂装饰器所有用法(建议收藏)
2019/08/23 Python
Python中注释(多行注释和单行注释)的用法实例
2019/08/28 Python
关于Pytorch的MNIST数据集的预处理详解
2020/01/10 Python
Django单元测试中Fixtures的使用方法
2020/02/26 Python
python pandas移动窗口函数rolling的用法
2020/02/29 Python
快速了解Python开发环境Spyder
2020/06/29 Python
Python判断远程服务器上Excel文件是否被人打开的方法
2020/07/13 Python
利用CSS3动画实现圆圈由小变大向外扩散的效果实例
2018/09/10 HTML / CSS
html5 sessionStorage会话存储_动力节点Java学院整理
2017/07/06 HTML / CSS
写一个方法,输入一个文件名和一个字符串,统计这个字符串在这个文件中出现的次数
2016/04/13 面试题
入党申请书自我鉴定
2013/10/12 职场文书
营业员个人总结的自我评价
2013/10/25 职场文书
银行党的群众路线教育实践活动对照检查材料
2014/09/25 职场文书
学生会辞职信
2015/03/02 职场文书
八年级作文之友情
2019/11/25 职场文书
python 实现体质指数BMI计算
2021/05/26 Python