php伪静态配置
配置虚拟主机和伪静态
1.开启Apache的rewrite模块
LoadModule rewrite_module modules/mod_rewrite.so
2.开启虚拟主机功能
# Virtual hosts
Include conf/extra/httpd-vhosts.conf
3.修改conf/extra/httpd-vhosts.conf文件
<VirtualHost *:80>
DocumentRoot "F:/wamp/www/Teacher" 指定访问目录
ServerName www.baidu.com 指定允许访问的域名
<Directory "F:/wamp/www/Teacher"> 对这个目录进行设置
Deny from all 禁止任何人访问,不写可以访问,是因为如果此目录没做设置,会继承他的上级目录来权限;如果上级目录禁止访问,可以再此目录中写Allow from all则这个目录就可以访问,不会继承父目录的权限
Options none 不允许服务器显示目录中的文件列表,允许就改成Options indexes
DirectoryIndex abc.html 123.html 配置目录指定首页面,默认是index,指定后先选择abc.html,如果没有再显示123.html
errorDocument 404 /404.html 指定发生错误后显示的页面,errorDocument后跟HTTP状态码,当遇到这种状态吗,就会执行后面指定的页面
allowoverride all 允许到对应目录的.htaccess文件中 读取规则
下面配置rewrite规则
RewriteEngine On 开启重新功能(一定要检测是否启用mod_rewrite.so模块)
RewriteRule a.html b.php 当访问a.html页面时,其实是访问b.php
RewriteRule news/id/(\d+).html news.php?id=$1 为了广泛的使用,可以使用正则来匹配news/id/100.html这种都执向news.php,接收的参数就是前面匹配的数值
</Directory>
</VirtualHost>
4.htaccess文件的写法
在没有权限修改httpd-vhosts.conf文件的情况系下,可以使用.htaccess文件来做目录权限,如果.htaccess用不了,就看看httpd-vhosts.conf文件是否开启了allowoverride all
<IfModule rewrite_module> #如果加载了rewrite_module模块
这些规则和 httpd-vhosts.conf文件中的规则写法一样
RewriteEngine On
RewriteRule news/id/(\d+).html news.php?id=$1
可以写多条规则
</IfModule>
5.做防盗链
<IfModule rewrite_module>
RewriteEngine on
RewriteCond %{HTTP_REFERER} !^http://(www\.)?xuni.com(/)?.*$ [NC]
RewriteRule .*\.(gif|jpg|jpeg|bmp|png)$ http://www.xuni.com/warning.xjpg [R,NC]
</IfModule>
6.在C:\Windows\System32\drivers\etc的host文件中添加域名指向到本地127.0.0.1 www.xuni.com
注意:在配置好后,打开localhost发现提示403错误,是因为开启了虚拟主机功能(第二步),在httpd-vhosts.conf文件中默认添加了几条规则,因为用的是Wamp环境,里面的DocumentRoot不是Wamp指定的根目录,导致localhost定位到的目录不对,这就是导致localhost不能访问403的原因,只要把默认的规则修改下
<VirtualHost *:80>
ServerAdmin webmaster@dummy-host2.example.com
DocumentRoot "f:/wamp/www" #访问的根目录
ServerName localhost #允许访问的域名
ErrorLog "logs/dummy-host2.example.com-error.log"
CustomLog "logs/dummy-host2.example.com-access.log" common
</VirtualHost>
然后在后面添加自己需要的规则
php伪静态配置的更多相关文章
- DZ 3.2 URL 伪静态配置 教程
原文转自:http://www.zccode.com/thread-682-1-1.html 教程说明: 1 首先需要下载URL重写工具,拷到服务器下面安装即可,这里配置IIS7(x64)伪静态. 工 ...
- IIS伪静态配置,使用URLRewriter实现伪静态
前段时间开发公司官网,用到了URLRewriter实现伪静态,在VS调试模式下没有任何问题,部署到IIS上后总是提示404的错误,查了很久才知道IIS需要做相应的配置才能实现动态跳转的功能,现将IIS ...
- PHP各环境下的伪静态配置
一.Apache的伪静态配置 1.网站根目录下需要有 .htaccess 文件,没有则自己创建一个,内容为 <IfModule mod_rewrite.c> RewriteEngine o ...
- Nginx伪静态配置和常用Rewrite伪静态规则集锦
伪静态是一种可以把文件后缀改成任何可能的一种方法,如果我想把php文件伪静态成html文件,这种相当简单的,下面我来介绍nginx 伪静态配置方法 nginx里使用伪静态是直接在nginx.conf ...
- Nginx 服务器伪静态配置不当造成 Access denied
Nginx 服务器伪静态配置不当造成 Access denied 有群有反馈将 FastAdmin 布署到阿里云后无法打开后台. 出现如下提示,首页是可以打开,点登录链接后出现的.(下是群友的截图) ...
- Windows server 2003 伪静态配置方法
Windows server 2003 伪静态配置方法 先我们下载Rewrite伪静态组件到服务器,然后解压到D:\Rewrite下,解压后如下图: 提示:ReWrite组件所在目录要有网站所有者 ...
- [转]Nginx伪静态配置和常用Rewrite伪静态规则集锦
Nginx伪静态配置和常用Rewrite伪静态规则集锦 作者: 字体:[增加 减小] 类型:转载 时间:2014-06-10 我要评论 伪静态是一种可以把文件后缀改成任何可能的一种方法,如果我想把ph ...
- 【转】 nginx rewrite 伪静态配置参数详细说明
nginx rewrite 伪静态配置参数和使用例子 附正则使用说明 正则表达式匹配,其中: * ~ 为区分大小写匹配 * ~* 为不区分大小写匹配 * !~和!~*分别为区分大小写不匹配及不区分 ...
- 伪静态 net-IIS伪静态配置,使用URLRewriter实现伪静态
https://www.cnblogs.com/zhenzaizai/p/10364343.html 前段时间开发公司官网,用到了URLRewriter实现伪静态,在VS调试模式下没有任何问题,部署到 ...
- php程序Apache,IIS 7,nginx 伪静态配置方法总汇
一,Apache 环境伪静态配置方法: 在根目录下放置一个.htaccess 文件,内容如下: <IfModule mod_rewrite.c> Options +FollowSymlin ...
随机推荐
- http缓存机制与原理
一.浏览器缓存分类:强制缓存和协商缓存 二.浏览器加载一个页面的简单流程 浏览器第一次请求 浏览器再次请求页面 三.http缓存涉及到的相关术语 缓存命中率:从缓存中得到数据的请求数与所有请求数的比率 ...
- 后台运行spark-submit命令的方法
在使用spark-submit运行工程jar包时常常会出现一下两个问题: 1.在程序中手打的log(如System.out.println(“***testRdd.count=”+testRdd.co ...
- Freemarker入门(一)——入门与基本概述
1.概述 1.文档 完美的中文文档:http://freemarker.foofun.cn/ 2.是什么 FreeMarker是一个用Java语言编写的模板引擎.它基于模板来生成文本输出.Freema ...
- 2017-2018-1 20155308&20155321&20155330《信息安全技术》实验三——数字证书应用1
2017-2018-1 20155308&20155321&20155330<信息安全技术>实验三--数字证书应用1 实验目的 了解PKI体系 了解用户进行证书申请和CA颁 ...
- 关于homebrew使用时遇到的问题: Error: Could not symlink bin/gdb/usr/local/bin is not writable.
# 关于homebrew使用时遇到的问题: Error: Could not symlink bin/gdb/usr/local/bin is not writable. 这是我在给我的Mac电脑安装 ...
- 20155339《java程序设计》第十二周课堂实践总结
Arrays和String单元测试 在IDEA中以TDD的方式对String类和Arrays类进行学习 测试相关方法的正常,错误和边界情况 String类 charAt split Arrays类 s ...
- 【MongoDB】NoSQL Manager for MongoDB 教程(进阶篇)
项目做完,有点时间,接着写下第二篇吧.回顾戳这里 基础篇:安装.连接mongodb.使用shell.增删改查.表复制 本文属于进阶篇,为什么叫进阶篇,仅仅是因为这些功能属于DB范畴,一般使用的不多, ...
- 【LG5019】[NOIP2018]道路铺设
[LG5019][NOIP2018]道路铺设 题面 洛谷 题解 \(NOIP\) 抄 \(NOIP\)差评 设当前做到了位置\(i\) 且\(h_i\) \(-\) \(h_i\)\(_+\)\(_1 ...
- 3110: [Zjoi2013]K大数查询
3110: [Zjoi2013]K大数查询 https://lydsy.com/JudgeOnline/problem.php?id=3110 分析: 整体二分+线段树. 两种操作:区间加入一个数,区 ...
- .NET Core单元测试之搞死开发的覆盖率统计(coverlet + ReportGenerator )
.NET Core单元测试之搞死开发的覆盖率统计 这两天在给项目补单元测试,dalao们要求要看一下测试覆盖率 翻了一波官方test命令覆盖率倒是有支持了,然而某个更新日志里面写着 ["Su ...