前两天部署一个项目到本机环境,从nginx转到apache,因为不熟悉apache的重写规则,给自己挖了很多坑。。看了很多博客后,终于解决了问题,总结如下。
什么是url重写?
url重写可以把冗长的url地址按我们自定义的规则来简化。比如一个类似 www.test.com?user_id=123&user_ps=abc 的域名,通过url重写,我们直接以 www.test.com/123/abc 的方式来访问。这样是不是简洁多了?这样既可以增强seo,同时也可以处理形如访问url不存在的问题。
启动url重写的步骤如下
1、打开apache/conf目录下的httpd.conf,找到
#LoadModule rewrite_module modules/mod_rewrite.so
将最前面的#去掉
2、找到
<Directory />
AllowOverride NONE
Require all granted
</Directory>
<Directory />
AllowOverride ALL
Require all granted
</Directory>
3、在项目根目录下创建 .htaccess 文件,在该文件中输入(windows下无法直接创建。htaccess文件,可先新建记事本,再另存为)
<IfModulemod_rewrite.c>
Options Indexes FollowSymlinks