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 相关文章推荐
smtp邮件发送一例
Oct 09 PHP
PHP 字符串 小常识
Jun 05 PHP
php explode函数实例代码
Feb 27 PHP
PHP开发工具ZendStudio下Xdebug工具使用说明详解
Nov 11 PHP
discuz目录文件资料汇总
Dec 30 PHP
php获得文件大小和文件创建时间的方法
Mar 13 PHP
Laravel 5框架学习之路由、控制器和视图简介
Apr 07 PHP
基于OpenCart 开发支付宝,财付通,微信支付参数错误问题
Oct 01 PHP
php pdo oracle中文乱码的快速解决方法
May 16 PHP
微信支付扫码支付php版
Jul 22 PHP
微信公众平台开发教程③ PHP实现微信公众号支付功能图文详解
Apr 10 PHP
PHP设计模式(观察者模式)
Jul 07 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
关于php fread()使用技巧
2010/01/22 PHP
在smarty中调用php内置函数的方法
2013/02/07 PHP
PHP应用跨时区功能的实现方法
2019/03/21 PHP
Javascript 个人笔记(没有整理,很乱)
2007/07/07 Javascript
JavaScript类库D
2010/10/24 Javascript
JavaScript导出Excel实例详解
2014/11/25 Javascript
js实现的彩色方块飞舞奇幻效果
2016/01/27 Javascript
JS组件系列之Bootstrap Icon图标选择组件
2016/01/28 Javascript
vue货币过滤器的实现方法
2017/04/01 Javascript
JavaScript事件方法(实例讲解)
2017/06/27 Javascript
基于vue 实现token验证的实例代码
2017/12/14 Javascript
JavaScript实现异步图像上传功能
2018/07/12 Javascript
详解使用jest对vue项目进行单元测试
2018/09/07 Javascript
仿vue-cli搭建属于自己的脚手架的方法步骤
2019/04/17 Javascript
Mpvue中使用Vant Weapp组件库的方法步骤
2019/05/16 Javascript
详解json串反转义(消除反斜杠)
2019/08/12 Javascript
在LayUI图片上传中,解决由跨域问题引起的请求接口错误的方法
2019/09/24 Javascript
vue 实现特定条件下绑定事件
2019/11/09 Javascript
vue-父子组件和ref实例详解
2019/11/10 Javascript
Vue实现简单的拖拽效果
2020/08/25 Javascript
[02:27]DOTA2英雄基础教程 莱恩
2014/01/17 DOTA
Python文件夹与文件的操作实现代码
2014/07/13 Python
Python多进程同步Lock、Semaphore、Event实例
2014/11/21 Python
Python实现从百度API获取天气的方法
2015/03/11 Python
python下实现二叉堆以及堆排序的示例
2017/09/29 Python
利用Tkinter(python3.6)实现一个简单计算器
2017/12/21 Python
python读取文本中数据并转化为DataFrame的实例
2018/04/10 Python
Python使用matplotlib绘制三维图形示例
2018/08/25 Python
python通过zabbix api获取主机
2018/09/17 Python
DJango的创建和使用详解(默认数据库sqlite3)
2019/11/18 Python
python实现从尾到头打印单链表操作示例
2020/02/22 Python
python利用 keyboard 库记录键盘事件
2020/10/16 Python
通过代码简单了解django model序列化作用
2020/11/12 Python
Nike瑞士官网:Nike CH
2021/01/18 全球购物
市场部经理岗位职责
2015/02/02 职场文书
2015年党建工作目标责任书
2015/05/08 职场文书