
本文旨在解决在 XAMPP 本地环境中无法通过 .htaccess 文件去除 URL 中的 .php 后缀的问题。重点在于确认 mod_rewrite 模块已正确启用,并提供详细的配置步骤和常见问题排查方法,确保本地开发环境与线上服务器行为一致,提升开发效率。
在 XAMPP 本地环境中,mod_rewrite 模块默认可能未启用,这是导致 URL 重写规则失效的常见原因。要启用该模块,请按照以下步骤操作:
打开 Apache 配置文件: 找到 XAMPP 安装目录下的 apache\conf\httpd.conf 文件,使用文本编辑器打开。
取消注释 mod_rewrite 模块: 在文件中搜索 mod_rewrite.so。通常,该行会被注释掉(以 # 开头)。移除行首的 # 符号,取消注释该行。例如:
立即学习“PHP免费学习笔记(深入)”;
LoadModule rewrite_module modules/mod_rewrite.so
保存文件: 保存对 httpd.conf 文件的修改。
重启 Apache 服务器: 通过 XAMPP 控制面板停止 Apache 服务器,然后重新启动。
确保 .htaccess 文件位于您的网站根目录下,并且包含正确的重写规则。以下是一个常用的 .htaccess 文件示例,用于去除 URL 中的 .php 后缀:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}\.php -f
RewriteRule ^(.*[^/])/?$ $1.php [L]代码解释:
注意事项:
AllowOverride 指令控制 Apache 服务器是否允许在 .htaccess 文件中使用重写规则。确保在 httpd.conf 文件中,您的网站目录或虚拟主机配置中,AllowOverride 指令设置为 All。
查找目录配置: 在 httpd.conf 文件中,找到与您的网站根目录相关的 <Directory> 块。例如:
<Directory "C:/xampp/htdocs">
Options Indexes FollowSymLinks Includes ExecCGI
AllowOverride None
Require all granted
</Directory>修改 AllowOverride 指令: 将 AllowOverride None 修改为 AllowOverride All。
<Directory "C:/xampp/htdocs">
Options Indexes FollowSymLinks Includes ExecCGI
AllowOverride All
Require all granted
</Directory>保存文件: 保存对 httpd.conf 文件的修改。
重启 Apache 服务器: 通过 XAMPP 控制面板停止 Apache 服务器,然后重新启动。
成功去除 XAMPP 本地主机 URL 中的 .php 后缀需要确保 mod_rewrite 模块已启用,.htaccess 文件配置正确,并且 AllowOverride 指令设置为 All。 按照以上步骤进行配置和排错,可以确保您的本地开发环境与线上服务器的行为一致,提高开发效率。如果在配置过程中遇到任何问题,请参考 Apache 的官方文档或在线社区寻求帮助。
以上就是去除 XAMPP 本地主机 URL 中的 .php 后缀:配置与排错指南的详细内容,更多请关注php中文网其它相关文章!
PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号