ThinkPHP 重写模式去除index.php 浏览器显示Not Found 找不到啊。求解

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ThinkPHP 重写模式去除index.php 浏览器显示Not Found 找不到啊。求解相关的知识,希望对你有一定的参考价值。

Thinkphp新手。
我按照教学视频一步步来的,而我的却不行。检查和调试了半天,还是不行。但我是不会放弃的。继续调试。
请各位前辈帮我看看。谢谢

配置项 设置URL为重写模式:

index方法里输出URL重写模式地址

再配置Apache的httpd.conf(把rewrite.so前面的#号删掉了)

然后在index.php同级下建立.htaccess文件 写入代码

运行浏览器 结果如下:

这一步很正常。说明我的index方法起了作用。
但是user方法就不行了(我复制了这个界面的URL地址)。如图:

why? Why do you want to do this to me?

参考技术A apache网站目录的httpd.conf
AllowOverride None
改为
AllowOverride All
然后重启apache追问

有很多AllowOverride None 是哪个?

追答

如果没有启用虚拟主机一般改网站的根目录那个就可以了

#
# Possible values for the Options directive are "None", "All",
# or any combination of:
# Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews
#
# Note that "MultiViews" must be named *explicitly* --- "Options All"
# doesn't give it to you.
#
# The Options directive is both complicated and important. Please see
# http://httpd.apache.org/docs/2.2/mod/core.html#options
# for more information.
#
Options Indexes FollowSymLinks

#
# AllowOverride controls what directives may be placed in .htaccess files.
# It can be "All", "None", or any combination of the keywords:
# Options FileInfo AuthConfig Limit
#
AllowOverride All

本回答被提问者和网友采纳

设置ThinkPHP(3.2.1)默认入口文件,及URL重写模式

前提一:在PHP+Apache的配置环境下

一、设置ThinkPHP项目默认入口文件:

找到Apache安装目录Apache24\conf\下配置文件:httpd.conf文件。打开后找到DirectoryIndex

技术分享

将默认的index.html文件改为index.php文件(任意自己想设置的入口文件)

之后重启Apache后,设置生效。

注意:在移动项目到其他电脑或者服务器上时,因为默认入口文件配置在Apache中,不会随着项目被移动到其它电脑上,因此注意其他电脑和开发电脑要保持一致,否则不能正常运行项目程序

 

二、设置URL 重写模式

找到Apache安装目录Apache24\conf\下配置文件:httpd.conf文件。

1.找到mod_rewrite.so  去掉当前行注释,加载重写模式

技术分享

2.将所有AllowOverride 后的默认设置None改为:All

1)

技术分享

2)

技术分享

3)

技术分享

并且在ThinkPHP文件config文件中配置重写模式为2:

    //rewriter重写模式
    ‘URL_MODEL‘=>2,

 

重启Apache后,设置生效。

注意:因为URL重写模式配置在Apache中,不会随项目而移动。因此注意其他电脑配置要保持一致,否则不能正常运行项目程序

 

以上是关于ThinkPHP 重写模式去除index.php 浏览器显示Not Found 找不到啊。求解的主要内容,如果未能解决你的问题,请参考以下文章

设置ThinkPHP(3.2.1)默认入口文件,及URL重写模式

ThinkPHP在Apache和Nginx下去除index.php方法

ThinkPHP在Apache和Nginx下去除index.php方法

thinkphp框架 url 去除index.php

thinkphp5去除index.php的几大方式,根治各种不行

ThinkPHP5隐藏index.php在Win7或者Win2008R2下IIS设置