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功能可能就需要调整

相关推荐
小杨啥都学27 分钟前
vscode修改默认终端
vscode
蓝悦无人机28 分钟前
LangChain v1.0 系列教程——第2章 工具系统
langchain·json·装饰器模式·pydantic
aixingpan2 小时前
aixingpan.cn API开发文档:api_docs_bichart_natalvssolararc2接口指南
前端·php
Lyra_Infra4 小时前
从一段错误 JSON 说起:Policy、Role 与 IAM
后端·json·aigc
羑悻的小杀马特5 小时前
数据织网者:Jsoncpp库深度解析——从C++原生JSON处理到工程级数据交互实战全攻略
c++·json·交互·jsoncpp·原生库
代码什么用6 小时前
JSON一文速通
java·json
子非鱼a6 小时前
【WEB】WriteShell
php
郝学胜-神的一滴7 小时前
C++20模板元编程 01:从零吃透模板核心底层逻辑
开发语言·c++·vscode·程序人生·开源
闲云野鹤在人间7 小时前
Docker入门|第3章 镜像详解
linux·网络·docker·容器·centos·云计算·php
sbjdhjd8 小时前
从兼容路由到任意方法调用:ThinkPHP 5.1.29 RCE 复现与调试复盘 | 06
经验分享·安全·网络安全·数据挖掘·开源·php·rce