美文网首页
记录如何隐藏 ThinkPHP5 入口文件 index.php

记录如何隐藏 ThinkPHP5 入口文件 index.php

作者: Edwinpanzzz | 来源:发表于2019-02-16 13:50 被阅读0次
    • 前提:使用的是 apache 环境而不是 PHPStudy 之类
      在ThinkPHP5 的官方文档中,隐藏 index.php 的方法需要在入口文件的同级添加 .htaccess 文件(官方默认自带了该文件),内容如下:
    <IfModule mod_rewrite.c>
    Options +FollowSymlinks -Multiviews
    RewriteEngine on
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L]
    </IfModule>
    

    我就纳闷,不是自带了 .htaccess 文件么,为什么不能隐藏 index.php 文件。

    官方文档还说,如果你使用的 apache 版本使用上面的方式无法正常隐藏 index.php,可以尝试使用下面的方式配置 .htaccess 文件:

    <IfModule mod_rewrite.c>
    Options +FollowSymlinks -Multiviews
    RewriteEngine on
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^(.*)$ index.php?/$1 [QSA,PT,L]
    </IfModule>
    

    更改了 .htaccess 文件还是没用,最后在文档下方浏览了 N 多个评论后成功解决:

    • 打开 httpd.conf 配置文件
    • 加载 mod_rewrite.so 模块,即将 LoadModule rewrite_module modules/mod_rewrite.so 前面的 # 号去掉
    • 将 AllowOverride none 改为 AllowOverride All(有三处,必须全部改,一开始我就只改了一处)

    相关文章

      网友评论

          本文标题:记录如何隐藏 ThinkPHP5 入口文件 index.php

          本文链接:https://www.haomeiwen.com/subject/bfmbeqtx.html