thinkphp去掉index.php的方法实例

thinkphp去掉index.php的方法实例,第1张

本文主要和大家分享thinkphp去掉index.php的方法实例,希望能帮助到大家。

环境 : win10,apache,phpstudy,thinkPHP3.2

第一步,确认ThinkPHP目录下面的Conf文件夹下面的convention.php里面的

'URL_MODEL' => 2,

第二步,确认项目根目录下面的有.htaccess文件,并且里面内容是

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

这里需要补充说明的是thinkPHP自带的这个文件里面倒数第二行没有"?"这个字符

第三步,确认httpd.conf文件里面的AllowOverride选项都为All,确认LoadModule rewrite_module modules/mod_rewrite.so是处于打开状态

第四步,配置虚拟主机:1.在httpd.conf文件夹中可以看到Include conf/vhosts.conf此项是默认打开状态,但是这个文件里面是空的,那么就让他空着好了,下面需要复制一行,添加自己的配置文件,很简单,如增加一行Include conf/myconfig/*.conf,这个意思是加载conf文件夹下面的myconfig文件夹下面的所有以.conf结尾的问价,这里需要特别说明的是,如果这里面如果没有以.conf结尾的文件后者有不是.conf结果的文件,则在apache重启的时候会报错.我在myconfig文件夹下面建立了一个文件叫testtp.conf,里面的内容如下:

<VirtualHost *:80>
    ServerName testtp
    DocumentRoot "D:/WWW/TestTp"
    ErrorLog "logs/testtp.local-error.log"
    CustomLog "logs/testtp.local-access.log" common
    <Directory "D:/WWWW/TestTp">
        Options  Indexes  FollowSymLinks  ExecCGI
        AllowOverride All
        Order allow,deny
        Allow from all
        Require all granted
    </Directory>
</VirtualHost>

这里需要注意的是

ServerNametesttp
   DocumentRoot "D:/WWW/TestTp"
<Directory "D:/WWWW/TestTp">

第一行是配置hosts文件的时候,虚拟主机的名字要写对,二三行是说对应了项目的目录

第四步,在hosts文件中添加这一行

127.0.0.1 testtp

第五步,重启apache

原来的访问地址:

http://localhost/testtp/index.php/Home/Index/index

现在的访问地址:

http://testtp/Home/Index/index(注意,访问的时候要加上http://)

相关推荐:

Yii如何隐藏URL中index.php

php 设置index.php文件为只读的方法详解

thinkphp隐藏index.php/home,并允许访问其他模块

以上就是thinkphp去掉index.php的方法实例的详细内容,更多请关注php中文网其它相关文章!

文章来源:https://www.php.cn/faq/387049.html

本文经用户投稿或网站收集转载,如有侵权请联系本站。

发表评论

0条回复