php伪静态之APACHE篇


Posted in PHP onJune 02, 2014

1.检测Apache是否支持mod_rewrite
通过php提供的phpinfo()函数查看环境配置,通过Ctrl+F查找到“Loaded Modules”,其中列出了所有apache2handler已经开启的模块,如果里面包括“mod_rewrite”,则已经支持,不再需要继续设置。

如果没有开启“mod_rewrite”,则打开目录 您的apache安装目录“/apache/conf/” 下的 httpd.conf 文件,通过Ctrl+F查找到“LoadModule rewrite_module”,将前面的”#”号删除即可。
如果没有查找到,则到“LoadModule” 区域,在最后一行加入“LoadModule rewrite_module modules/mod_rewrite.so”(必选独占一行),然后重启apache服务器即可。

2.让apache服务器支持.htaccess

如何让自己的本地APACHE服务器支持”.htaccess”呢?其实只要简单修改一下apache的httpd.conf设置就可以让 APACHE支 持.htaccess了。打开httpd.conf文件(在那里? APACHE目录的CONF目录里面),用文本编辑器打开后,查找

Options FollowSymLinks
AllowOverride None

改为

Options FollowSymLinks
AllowOverride All

就可以了。

3.建立.htaccess 文件

如果是在windows平台下,刚开始还真不知道怎么建立”.htaccess”文件,因为这个文件实际上没有文件名,仅仅只有扩展名,通过普通方式是无法建立这个文件的,别着急,马上告诉你三种方法:三种方法都是先建立一个htaccess.txt的文本文件(当然,这个文本文件的名字你可以随便取),然后有三种方式给这个文件重命名:

(1)用记事本打开,点击文件?另存为,在文件名窗口输入”.htaccess”,注意是整个绿色部分,也就是包含英文引号,然后点击保存就行了。

(2)进入cmd命令 窗口,通过cd切换当刚建立htaccess.txt文件的文件夹,然后输入命令:rename htaccess.txt .htaccess ,然后点击键盘Enter键即可。

(3)通过ftp连接htaccess.txt所在文件夹,通过ftp软件重命名。

4.rewrite规则学习

我们新建一个.htaccess文件之后,就在里面写入以下内容:

RewriteEngine on #rewriteengine为重写引擎开关on为开启off为关闭
RewriteRule ([0-9]{1,})$ index.php?id=$1

我讲解一下RewriteRule:RewriteRule是重写规则,支持正则表达式的,上面的([0-9]{1,})是指由数字组成的,$是结束标志,说明是以数字结束!

好吧,现在我们可以实现伪静态页面了,写下一下的规则:

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule ^index.html$ index.php
RewriteRule ^new-(\d+).html$ newxx.php?uid=$1
</IfModule>

就可以实现 http://127.0.0.1/index.html 和 http://127.0.0.1/new-1.html

PHP 相关文章推荐
PHP操作文件方法问答
Mar 16 PHP
php self,$this,const,static,-&amp;gt;的使用
Oct 22 PHP
基于PHP的cURL快速入门教程 (小偷采集程序)
Jun 02 PHP
php的webservice的wsdl的XML无法显示问题的解决方法
Mar 11 PHP
php实现的漂亮分页方法
Apr 17 PHP
php获取网页中图片、DIV内容的简单方法
Jun 19 PHP
PHP Session机制简介及用法
Aug 19 PHP
PHP实现的下载远程图片自定义函数分享
Jan 28 PHP
Android AsyncTack 异步任务实例详解
Nov 02 PHP
关于ThinkPhp 框架表单验证及ajax验证问题
Jul 19 PHP
Django中的cookie与session操作实例代码
Aug 17 PHP
Yii 框架使用数据库(databases)的方法示例
May 19 PHP
50个PHP程序性能优化的方法
Jun 02 #PHP
浅谈php扩展imagick
Jun 02 #PHP
PHP小技巧之函数重载
Jun 02 #PHP
mac下Apache + MySql + PHP搭建网站开发环境
Jun 02 #PHP
在PHP中使用X-SendFile头让文件下载更快
Jun 01 #PHP
PHP is_subclass_of函数的一个BUG和解决方法
Jun 01 #PHP
PHP中数组的分组排序实例
Jun 01 #PHP
You might like
BBS(php &amp; mysql)完整版(八)
2006/10/09 PHP
细谈php中SQL注入攻击与XSS攻击
2012/06/10 PHP
PHP打开和关闭文件操作函数总结
2014/11/18 PHP
smarty模板引擎中变量及变量修饰器用法实例
2015/01/22 PHP
Laravel实现自定义错误输出内容的方法
2016/10/10 PHP
JavaScript入门之基本函数详解
2011/10/21 Javascript
nodejs获取本机内网和外网ip地址的实现代码
2014/06/01 NodeJs
JavaScript给input的value赋值引发的关于基本类型值和引用类型值问题
2015/12/07 Javascript
JS中Eval解析JSON字符串的一个小问题
2016/02/21 Javascript
JavaScript实现提交模式窗口后刷新父窗口数据的方法
2017/06/16 Javascript
Node.js如何使用Diffie-Hellman密钥交换算法详解
2017/09/05 Javascript
vue2.0项目实现路由跳转的方法详解
2018/06/21 Javascript
element-ui表格列金额显示两位小数的方法
2018/08/24 Javascript
vue使用原生js实现滚动页面跟踪导航高亮的示例代码
2018/10/25 Javascript
通过说明与示例了解js五种设计模式
2019/06/17 Javascript
nodejs的安装使用与npm的介绍
2019/09/11 NodeJs
Python XML RPC服务器端和客户端实例
2014/11/22 Python
python 计算文件的md5值实例
2017/01/13 Python
使用Python &amp; Flask 实现RESTful Web API的实例
2017/09/19 Python
解决DataFrame排序sort的问题
2018/06/07 Python
Python判断一个list中是否包含另一个list全部元素的方法分析
2018/12/24 Python
Python写一个基于MD5的文件监听程序
2019/03/11 Python
详解Python使用Plotly绘图工具,绘制甘特图
2019/04/02 Python
基于SpringBoot构造器注入循环依赖及解决方式
2020/04/26 Python
python中列表的含义及用法
2020/05/26 Python
细说NumPy数组的四种乘法的使用
2020/12/18 Python
CSS3制作轮播图的一种方法
2019/11/11 HTML / CSS
介绍一下EJB的分类及其各自的功能及应用
2016/08/23 面试题
什么是继承
2013/12/07 面试题
与UNIX有关的几个名词
2015/09/17 面试题
Delphi软件工程师试题
2013/01/29 面试题
出纳岗位职责模板
2013/11/27 职场文书
成品仓管员岗位职责
2013/12/11 职场文书
大学班级计划书
2014/04/29 职场文书
村干部四风问题整改措施
2014/09/30 职场文书
详解vue身份认证管理和租户管理
2021/05/25 Vue.js