关于PHP怎么在站点根目录部署新项目的问题?

场景描述:

假设域名:www.app.com

在Nginx已经将/web/web1配置为Yii2(basic)的根目录,并部署应用,域名直接访问项目。

现在想在目录/web/web1/appdoc部署一个新的项目,并通过访问 www.app.com/appdoc即可访问appdoc项目 常规做法是解析一个子域名呗appdoc.app.com直接绑定appdoc站点目录就行了。

可能 有人会走马观花式的觉得so easy,除非你亲自实践过,否则保证你花样百出。appdoc 下放置的是thinkphp3.2 的多模块项目。(此处可以忽略多模块的概念)

线索:
理论上讲,能够通过 location 匹配 /appdoc 的URL, 然后设定新的root就行了。比如下面这样:(往往行不通。。。)

location /appdoc {    # root /web/web1/appdoc  或者
    alias /web/web1/appdoc
    try_files xxx xxx xxx
}

类似这样的配置, 已经尝试不少于10 种了,需求很清晰:通过匹配URL访问路径访问对应项目, 只求亲自实践过的传授下经验啊,实践成功有红包

止于理论的回答,就不要回答了, 实践验真知


宝慕林4294392
浏览 1692回答 1
1回答

绝地无双

先试试这个location ^~ /appdoc {   root /web/web1/appdoc/   try_files xxx xxx xxx }
打开App,查看更多内容
随时随地看视频慕课网APP