Apache配置伪静态
注意:本文中关于Apache的配置修改,一定要记得重启Apache服务
伪静态的实现有多种方法,比如通过获取path_info信息使用php逻辑来达到伪静态,使用Apache提供的rewrite来达到伪静态,本文主要对Apache提供的rewrite实现伪静态做个记录
1、开启Apache服务的mod_rewrite模块:
编辑
下的httpd.conf文件:
2、编写伪静态规则
具体的规则的写法可以学习Apache手册中url重写:http://apache.jz123.cn/rewrite/rewrite_guide.html
规则写在什么地方?可以直接写在httpd.conf文件中,也可以写在项目文件中的 .htaccess文件中,当要写在 .htaccess文件中时记得在httpd.conf文件中开启对应目录的AllowOverride 
编写 .htaccess 文件
|
1
2
3
4
5
6
7
8
9
10
|
<IfModule mod_rewrite.c> Options +FollowSymlinks RewriteEngine On # 判断是否存在请求的目录, RewriteCond %{REQUEST_FILENAME} !-d # 判断是否存在请求的文件, RewriteCond %{REQUEST_FILENAME} !-f # 如果上面请求的路径文件存在,直接执行请求文件,不存在就继续执行下面的规则 RewriteRule ^detail/([\d]+).html$ detail.php?id=$1</IfModule> |
上面的规则意思是:当请求的文件存在时直接执行请求文件,当不存在时执行匹配最后的规则,进入到detail.php文件执行
4、当我们访问 http://localhost/statichtml/detail/3.html
因为 statichtml/detail/3.html 这个文件是不存在的,这时我们正真访问的其实是http://localhost/statichtml/detail.php?id=3

当我们访问:http://localhost/statichtml/detail/4.html
4.html这个文件是存在的


此时直接直接执行文件返回:

基本在Apache上的伪静态,简答的配置就是这样,当然你可以根据自己的需求将规则更加优雅。这完全都是你自己的需求和能力决定的。我只是在这里做一个简答的流程性的记录,只有配置的规则的一些只是在Apache手册上面有详细的说明。如果我们不是服务器管理员,只是一个很普通很普通的程序员,我们就先了解这么一个流程,以后工作中用到的时候好好看看手册,毕竟Apache的手册是很详细的。如果想着想着仔细的学习Apache手册,然后记住,这是很难的,如果我们不经常操作,很容易就忘记了。所以还是了解各流程然后需要时学习手册,这样最好。
Apache配置伪静态的更多相关文章
- apache配置伪静态Rewrite
1: 修改apache的httpd.conf文件 找到这一行 #LoadModule rewrite_module modules/mod_rewrite.so 改成 LoadModule rewri ...
- php Apache配置伪静态的介绍
以下是摘抄http://jingyan.baidu.com/article/86112f132aa7462737978718.html的,作为记录,方便以后参考 现有的在线网上视频教程对伪静态的讲解比 ...
- PHP Apache 配置伪静态
1.首先是开启rewrite_module(如何开启,百度搜索) 2.创建.htaccess文件(如何创建,百度搜索) 3.在.htaccess文件中打开重写服务:RewriteEngine On 4 ...
- apache 的rewrite函数配置伪静态
配置伪静态目的:对于访问比较长的uri,利于网站搜索工具更容易记住,换句话利于SEO 在配置文件中添加或找到 <IfModule mod_rewrite.c> </IfModule& ...
- 转--htaccess语法教程 apache服务器伪静态规则教程
转自:http://blog.csdn.net/qingli518/article/details/9118361 htaccess语法教程apache服务器伪静态规则教程 注:如果你是为了找Disc ...
- LAMP第二部分apache配置
课程大纲:1. 下载discuz! mkdir /data/wwwcd /data/wwwwget http://download.comsenz.com/DiscuzX/3.2/Discuz_X3 ...
- Nginx/Apache之伪静态设置 - 运维小结
一.什么是伪静态伪静态即是网站本身是动态网页如.php..asp..aspx等格式动态网页有时这类动态网页还跟"?"加参数来读取数据库内不同资料,伪静态就是做url重写操作(即re ...
- centos LAMP第二部分apache配置 下载discuz!配置第一个虚拟主机 安装Discuz! 用户认证 配置域名跳转 配置apache的访问日志 配置静态文件缓存 配置防盗链 访问控制 apache rewrite 配置开机启动apache tcpdump 第二十节课
centos LAMP第二部分apache配置 下载discuz!配置第一个虚拟主机 安装Discuz! 用户认证 配置域名跳转 配置apache的访问日志 配置静态文件缓存 配置防盗链 ...
- 使用WampServer搭建本地PHP环境,绑定域名,配置伪静态
倡萌之前介绍过 USBWebserver 快速搭建本地PHP环境 ,推荐USBWebserver的原因在于它是绿色的,不需要安装,想使用就手动运行下即可.但是 USBWebserver 也有自身的弱点 ...
随机推荐
- 大型发布会现场的 Wi-Fi 应该如何搭建(密集人群部署wifi抗干扰)?
原文连接: http://www.zhihu.com/question/20890194 WiFi网络的部署要远远比一般人想象的复杂,不是说放上几十个AP带宽就自动增加几十倍,恰恰相反,简单放几十个A ...
- jeecms一些经典标签
http://www.121ask.com/thread-5512-1.html [@cms_channel_list]标签详细介绍 http://www.jeecmstheme.com/2014/0 ...
- JProfiler 8(一个很好的java性能监控工具) 下载和注册码
windows x64 zip下载地址:http://download-aws.ej-technologies.com/jprofiler/jprofiler_windows-x64_8_0_1.zi ...
- oracle查看和修改最大连接数
第一步,在cmd命令行,输入sqlplus 或者直接在plsql中打开command window 第二步,根据提示输入用户名与密码 1. 查看processes和sessions参数 1 2 3 4 ...
- mysql 5.6.15升级到5.6.43
今天闲来无事,观察测试环境的zabbix服务器,发现内存泄漏严重,于是重启了,想起了前几天写的帖子发生了严重的内存泄漏可以把mysql升级到最新的小版本 于是乎就试着升级 old version:5. ...
- nodejs连接mongodb
一.安装 a.访问mongodb官网下载https://www.mongodb.com/,有zip或者msi版本,zip解压缩就可以用,msi需要安装后使用 b.安装,指定好安装路径,一路下一步 c. ...
- Vue基础知识之vue-resource和axios(三)
vue-resource Vue.js是数据驱动的,这使得我们并不需要直接操作DOM,如果我们不需要使用jQuery的DOM选择器,就没有必要引入jQuery.vue-resource是Vue.js的 ...
- Python之单元测试框架unittest
创建class继承unittest,每一个测试用例是以test开头的函数,先执行setup,然后用例按照字母的顺序执行,然后执行teardown import unittest class demo( ...
- selenium+python在mac环境上的搭建
前言 mac自带了python2.7的环境,所以在mac上安装selenium环境是非常简单的,输入2个指令就能安装好 需要安装的软件: 1.pip 2.selenium2.53.6 3.Firefo ...
- [jOOQ中文]2. jOOQ与Spring和Druid整合
https://segmentfault.com/a/1190000010496053 jOOQ和Spring很容易整合. 在这个例子中,我们将整合: Alibaba Druid(但您也可以使用其他连 ...