vscode通过.vscode/launch.json 内置php服务启动thinkphp 应用后无法加载路由解决方法

我们在使用vscode的 .vscode/launch.json Launch built-in server and debug 启动thinkphp应用后默认是未加载thinkphp的路由文件的, 这个就导致了,某些thinkphp的一些url路由无法访问的情况, 如http://0.0.0.0:8000/api/auth.admin/info这种中间带点的二级路由/api/auth.admin/info就无法访问了.

解决方法

在.vscode/launch.json中增加启动参数, 将thinkphp的public路径下的router.php文件加载进去 即可。

XML 复制代码
{
    "version": "0.2.0",
    "configurations": [
        {
            "name": "Launch built-in server and debug",
            "type": "php",
            "request": "launch",
            "runtimeArgs": [
                "-S",
                "localhost:8000",
                "-t",
                "${cwd}/public",
                "${cwd}/public/router.php"
            ],
            "port": 9003,
            "serverReadyAction": {
                "action": "openExternally"
            }
        }

    ]
}

上面的 "${cwd}/public/router.php" 这个就是thinkphp的路由加载文件,如果使用内置php启动tp时不加载这个文件,这默认不会加载某些路由规则,加上这个就OK了。

tp兼容模式解决方法 (不推荐)

当然,对于tp的应用,还有另外一种解决方法,就是使用兼容模式来访问,如将http://0.0.0.0:8000/api/auth.admin/info这种url的访问方式改为http://0.0.0.0:8000/?s=/api/auth.admin/info 这样也是可以的. 不过某些url功能可能就需要调整

相关推荐
JienDa3 分钟前
PHP 静态分析工具实战:PHPStan 和 Psalm 完全指南
开发语言·php
CHINAHEAO9 分钟前
Bagisto修复php弃用警告,看着难受
开发语言·php
惆怅客12338 分钟前
在 vscode 中断点调试 ROS2 C++ 的办法
c++·vscode·调试·ros 2
HIT_Weston1 小时前
74、【Ubuntu】【Hugo】搭建私人博客:VSCode 插件&配置
linux·vscode·ubuntu
晚风吹人醒.1 小时前
LAMP(Linux+Apache+MySQL+PHP)完整搭建过程
linux·服务器·mysql·centos·php·apache·lamp
_Orch1d1 小时前
《网络攻击与防御》复习笔记
笔记·安全·php
Lynnxiaowen1 小时前
今天我们继续DevOps内容Jenkins自动化部署PHP项目
linux·自动化·jenkins·php·devops
杰克崔1 小时前
vscode的缓存文件夹及查看进程读写的文件
ide·vscode·编辑器
Lethehong1 小时前
GLM-4.7 与 MiniMax M2.1 工程实测:一次性交付与长期 Agent 的分水岭
开发语言·php·ai ping·glm4.7·minimaxm2.1
Cv打怪升级1 小时前
3D-Front数据集 json说明
3d·json