宝塔搭建TP6站点,访问不存在页面报404

今天学习了thinkphp6框架,准备搭个测试站。

先说一下开发环境,win10+宝塔6.6.0免费版,在宝塔web面板安装了服务环境如下图:

Nginx1.17.2,MySQL5.7.26,PHP7.4  

完成准备工作后,新建站点tp6.loc,指定到tp的安装目录,打开命令行工具,查看目录结构如下图:

tp6默认目录结构

将运行目录设置到public目录,

设置public运行目录

打开浏览器输入 http://tp6.loc,显示tp的默认欢迎信息,表示搭建成功:

欢迎页面

为了开发调测方便,在环境变量文件.env打开调试选项:APP_DEBUG = true,然后更改浏览器地址为:

http://tp6.loc/abc

由于实际没有 abc 这个控制器,应该会显示错误信息,不过显示的却是404页面:

404错误

显然,这个不是tp框架报出的错误信息,为了查看tp本身显示的错误信息,在命令行输入:php think run 运行PHP内置的服务器,命令执行如下表示启动服务成功:

运行php think run

在浏览器输入 http://127.0.0.1:8000/abc 后页面显示如下:

控制器不存在

查看了nginx配置,应该是宝塔搭建的站点配置造成的以上不同,打开站点的 配置文件 选项:

站点配置

发现有一句:error_page 404 /404.html;

开头加上#将此句进行注释掉,保存。

刷新浏览器页面,还是显示404 Not Found,但是页面样式不一样了如下图:

404

这个是由于伪静态未设置的问题,更改伪静态设置如下:

设置伪静态到thinkphp项

打开“伪静态”选项卡,在下拉列表找到thinkphp选中,下面输入框自动添加上图内容,然后点击下面的保存。

再次刷新浏览器,报错信息正常了。

开始愉快的玩耍吧。

你可能感兴趣的:(宝塔搭建TP6站点,访问不存在页面报404)