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?
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方法