去除 XAMPP 本地主机 URL 中的 .php 后缀失败的解决方案

心靈之曲
发布: 2025-09-29 19:12:01
原创
896人浏览过

去除 xampp 本地主机 url 中的 .php 后缀失败的解决方案

本文旨在解决 XAMPP 本地开发环境中,使用 mod_rewrite 规则去除 URL 中的 .php 后缀失效的问题。通常,在服务器上配置的 URL 重写规则在本地 XAMPP 环境中无法正常工作,主要是由于 mod_rewrite 模块未启用或配置不正确。本文将详细介绍如何启用 mod_rewrite 模块并配置 .htaccess 文件,从而使 URL 重写在 XAMPP 本地环境中生效。

启用 mod_rewrite 模块

mod_rewrite 是 Apache 服务器的一个强大模块,用于实现 URL 重写。在 XAMPP 中,默认情况下可能未启用此模块。以下是启用 mod_rewrite 的步骤:

  1. 打开 php.ini 文件: 找到 XAMPP 的 PHP 配置文件 php.ini。通常,它位于 C:\xampp\php 目录下。使用文本编辑器打开该文件。

  2. 取消注释 extension=php_rewrite.dll: 在 php.ini 文件中搜索 extension=php_rewrite.dll。如果该行被注释(前面有分号 ;),则移除分号以启用该扩展。保存文件。

  3. 打开 httpd.conf 文件: 找到 XAMPP 的 Apache 配置文件 httpd.conf。通常,它位于 C:\xampp\apache\conf 目录下。使用文本编辑器打开该文件。

  4. 确保 mod_rewrite 已加载: 在 httpd.conf 文件中搜索 LoadModule rewrite_module modules/mod_rewrite.so。确保该行没有被注释。如果被注释,移除分号。

  5. 配置 AllowOverride: 在 httpd.conf 文件中找到 <Directory "C:/xampp/htdocs"> (或其他你网站的根目录配置)。在该块中,将 AllowOverride None 修改为 AllowOverride All。这将允许 .htaccess 文件覆盖 Apache 的全局配置。

    <Directory "C:/xampp/htdocs">
        Options Indexes FollowSymLinks Includes ExecCGI
        AllowOverride All
        Require all granted
    </Directory>
    登录后复制
  6. 重启 Apache 服务器: 在 XAMPP 控制面板中,停止并重新启动 Apache 服务器,以使更改生效。

配置 .htaccess 文件

.htaccess 文件是 Apache 服务器中的一个配置文件,允许你针对特定目录自定义服务器行为。以下是如何使用 .htaccess 文件去除 URL 中的 .php 后缀:

  1. 创建 .htaccess 文件: 在你的网站根目录下(通常是 C:\xampp\htdocs 或其子目录)创建一个名为 .htaccess 的文件。注意文件名以点开头,这在某些操作系统中可能需要特殊处理。

  2. 添加重写规则: 将以下代码添加到 .htaccess 文件中:

    RewriteEngine On
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME}\.php -f
    RewriteRule ^(.*[^/])/?$ $1.php [L]
    登录后复制
    • RewriteEngine On:启用 URL 重写引擎。
    • RewriteCond %{REQUEST_FILENAME} !-d:检查请求的文件名是否不是目录。
    • RewriteCond %{REQUEST_FILENAME}\.php -f:检查请求的文件名加上 .php 后是否是实际存在的文件。
    • RewriteRule ^(.*[^/])/?$ $1.php [L]:将请求的 URL 重写为带有 .php 后缀的文件。[L] 标志表示这是最后一条规则。

示例

假设你有一个名为 about.php 的文件,位于 C:\xampp\htdocs\mywebsite 目录下。在完成上述配置后,你可以通过 http://localhost/mywebsite/about 访问该文件,而无需在 URL 中包含 .php 后缀。

百度虚拟主播
百度虚拟主播

百度智能云平台的一站式、灵活化的虚拟主播直播解决方案

百度虚拟主播 36
查看详情 百度虚拟主播

立即学习PHP免费学习笔记(深入)”;

注意事项

  • 权限问题: 确保 Apache 服务器对 .htaccess 文件具有读取权限。
  • 语法错误: .htaccess 文件中的语法错误可能导致服务器错误。仔细检查你的规则。可以使用 Apache 的 httpd -t 命令来测试配置文件的语法。
  • 缓存: 浏览器可能会缓存重定向。如果更改后未生效,尝试清除浏览器缓存。
  • 虚拟主机: 如果你使用虚拟主机,请确保在虚拟主机的配置文件中也进行了相应的配置。

总结

通过启用 mod_rewrite 模块并正确配置 .htaccess 文件,可以轻松地在 XAMPP 本地环境中实现 URL 重写,从而去除 URL 中的 .php 后缀。 这不仅可以使 URL 更加美观,还有助于提高网站的 SEO 友好性。 确保按照上述步骤操作,并注意潜在的权限和语法问题,以确保配置成功。

以上就是去除 XAMPP 本地主机 URL 中的 .php 后缀失败的解决方案的详细内容,更多请关注php中文网其它相关文章!

PHP速学教程(入门到精通)
PHP速学教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号