开启Apache的mod_rewrite模块并配置AllowOverride All,再在.htaccess中添加重写规则,即可实现URL重写,使URL更简洁利于SEO。

在使用PHP一键环境(如XAMPP、WAMP、phpStudy等)时,开启URL重写(URL Rewrite)功能可以让网站的URL更简洁、利于SEO。大多数PHP一键环境中默认未启用重写模块或未配置好伪静态规则,需要手动设置。
启用Apache的mod_rewrite模块
URL重写依赖Apache的mod_rewrite模块,首先要确保该模块已开启:
打开Apache的配置文件httpd.conf(通常位于/apache/conf/httpd.conf)查找以下这行代码:
# LoadModule rewrite_module modules/mod_rewrite.so去掉前面的#号,使其生效保存文件并重启Apache服务
设置AllowOverride以支持.htaccess
如果站点使用.htaccess文件来定义重写规则,必须允许目录覆盖权限:
在httpd.conf中找到你的网站根目录配置段,例如:
将其中的AllowOverride None改为AllowOverride All这样Apache才会读取目录下的.htaccess文件
添加URL重写规则示例
在网站根目录创建或编辑.htaccess文件,加入你需要的重写规则。常见用法如下:
立即学习“PHP免费学习笔记(深入)”;
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?url=$1 [QSA,L]
说明:
RewriteEngine On:开启重写引擎RewriteCond:判断请求的不是真实存在的文件或目录RewriteRule:将所有请求转发到index.php,实现前端控制器模式(常用于MVC框架)
测试重写是否生效
完成配置后,可以进行简单测试:
创建一个测试页面test.php,内容为访问http://localhost/test/hello,如果输出hello,说明重写成功若出现404错误,请检查模块是否开启、AllowOverride设置及规则语法
基本上就这些。只要开启mod_rewrite、允许.htaccess、写对规则,URL重写就能正常运行。不同项目可能有特定规则,但原理一致。不复杂但容易忽略细节。
以上就是PHP一键环境如何配置URL重写_URL Rewrite规则设置的详细内容,更多请关注php中文网其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/24014.html
微信扫一扫
支付宝扫一扫