我已经尝试了几种我在互联网上找到的方法,但我仍然没有设法工作。
我想要的是,我有一个 url 的服务器配置: www.domain.com我已经安装并配置了一个 Drupal 网站。
我还有一个子域api.domain.com,我在其中安装并运行了 Laravel 应用程序。
重要的:
- 每个项目都有自己的 nginx 配置。
- 这两个项目都是我根目录下的兄弟项目。
我需要的
对 URL www.domain.com/api的所有请求都被请求到子域api.domain.com并且如果是特定的 URL,例如www.domain.com/api/option1/options2 request api.domain.com/option1/ option2 不重定向用户。
所以我基本上需要 Drupal 的 NGINX 配置忽略所有对/api URL 的请求和对子域的请求
为什么我需要
我需要将所有子域和其他所有内容都放在同一个域下,因为我只有 SSL 可用于www.domain.com而不是*.domain.com
我不知道这是否是解决我的问题的最佳方法,但如果您有任何其他建议,我愿意。
提前致谢。
我自己的答案
我无法回答自己的问题,所以这是我设法解决的答案。
location ^~ /api/ {
rewrite ^/api/?(.*)$ /$1 break;
proxy_pass http://api.domain.com;
}
这也将强制使用最后的斜杠。
如果您不想强制使用尾部斜杠,只需删除该位置的最后一个斜杠