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 生成的XML以FLASH获取为乱码终极解决
Aug 07 PHP
PHP 编程安全性小结
Jan 08 PHP
php cli换行示例
Apr 22 PHP
ThinkPHP的L方法使用简介
Jun 18 PHP
php面向对象中static静态属性和静态方法的调用
Feb 08 PHP
PHPCMS2008广告模板SQL注入漏洞修复
Oct 11 PHP
利用php_imagick实现复古效果的方法
Oct 18 PHP
Linux平台PHP5.4设置FPM线程数量的方法
Nov 09 PHP
Docker配置PHP开发环境教程
Dec 21 PHP
PHP进阶学习之垃圾回收机制详解
Jun 18 PHP
laravel中的fillable和guarded属性详解
Oct 23 PHP
基于PHP实现邮箱验证激活过程详解
Oct 28 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
建立文件交换功能的脚本(三)
2006/10/09 PHP
php中判断字符串是否全是中文或含有中文的实现代码
2011/09/16 PHP
PHP邮箱验证示例教程
2016/06/01 PHP
PHP大文件分割上传 PHP分片上传
2017/08/28 PHP
总结PHP中初始化空数组的最佳方法
2019/02/13 PHP
JavaScript 内置对象属性及方法集合
2010/07/04 Javascript
使用javascript实现ListBox左右全选,单选,多选,全请
2013/11/07 Javascript
优化Jquery,提升网页加载速度
2013/11/14 Javascript
wap图片滚动特效无css3元素纯js脚本编写
2014/08/22 Javascript
js中取得变量绝对值的方法
2015/01/03 Javascript
Javascript中innerHTML用法实例分析
2015/01/12 Javascript
JavaScript面向对象的实现方法小结
2015/04/14 Javascript
javascript关于open.window子页面执行完成后刷新父页面的问题分析
2015/04/27 Javascript
轻松学习jQuery插件EasyUI EasyUI创建RSS Feed阅读器
2015/11/30 Javascript
node.js插件nodeclipse安装图文教程
2020/10/19 Javascript
微信小程序 wx.request(OBJECT)发起请求详解
2016/10/13 Javascript
移动开发之自适应手机屏幕宽度
2016/11/23 Javascript
Node.js的特点详解
2017/02/03 Javascript
jQuery滚动监听实现商城楼梯式导航效果
2017/03/06 Javascript
JS查找英文文章中出现频率最高的单词
2017/03/20 Javascript
laravel实现中文和英语互相切换的例子
2019/09/30 Javascript
VUE实现密码验证与提示功能
2019/10/18 Javascript
Python3中的2to3转换工具使用示例
2015/06/12 Python
将Django框架和遗留的Web应用集成的方法
2015/07/24 Python
Python selenium 父子、兄弟、相邻节点定位方式详解
2016/09/15 Python
Win10环境python3.7安装dlib模块趟过的坑
2019/08/01 Python
python jenkins 打包构建代码的示例代码
2019/11/29 Python
python中绕过反爬虫的方法总结
2020/11/25 Python
假日旅行社实习自我鉴定
2013/09/24 职场文书
保密承诺书范文
2014/03/27 职场文书
煤矿安全生产月活动总结
2014/07/05 职场文书
超市创意活动方案
2014/08/15 职场文书
解除劳动合同协议书范本2014
2014/09/25 职场文书
党支部考察意见范文
2015/06/02 职场文书
Java基础之线程锁相关知识总结
2021/06/30 Java/Android
Go 语言结构实例分析
2021/07/04 Golang