今天突然想到要解决访问服务器网页,容易暴露服务器目录的问题
所以需要做一个重定向操作,不仅使url简洁美观,也解决了链接中还带有XXX.html等后缀名(这样看起来真的很low)
首先Apache要开启rewrite扩展
找到Apache的配置文件httpd.conf(我的Apache是下载解压就用的那种,目录跟windows的一样的)
去掉最前面的 # 号
开启之后,继续修改DocumentRoot的AllowOverride
将None修改为All
最后编写.htaccess文件,在你网站的根目录
vi .htaccess
复制下面的代码
RewriteEngine On //启用rewrite模块 on为打开,off为关闭
RewriteRule ^index$ index.php [L]
RewriteRule 就写你的重定向规则。
解释下 :RewriteRule ^index$ index.php [L]
^代表开始替换
$代表结束替换
[L] 代表结束这条匹配规则,可以表示为exit,break的含义
index.php代表要被替换的url
所以上面就是将url中的index.php替换成index。即取掉了.php
如果你的链接中还有参数啥的
比如你的url是index.php?id=1
你想替换成index/1
就可以使用这个规则:(0-9这里是正则匹配),$1是替换的第一个参数
RewriteRule ^index/([0-9]+)$ index.php?id=$1 [L]
如果有两个,例如url为index.php?id=1&list=time,规则就可写为
RewriteRule ^index/([0-9]+)/([a-z]+)$ index.php?id=$1&list=$2 [L]