尝试分离我的内部和外部 API,但由于某种原因,当我执行多层子域时,它只是重定向回根域。我设置了以下 nginx 块:
server {
server_name api.internal.---;
access_log /var/log/nginx/api.internal.---.access.log;
error_log /var/log/nginx/api.internal.---.error.log;
root /var/www/html/---/api;
index index.php;
include /etc/nginx/cloudflare/cloudflare.conf;
gzip off;
location / {
#add_header 'Access-Control-Allow-Methods' 'GET, POST, PUT, DELETE, OPTIONS' always;
try_files $uri $uri/ /index.php?$query_string;
}
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_read_timeout 600;
fastcgi_pass unix:/run/php/php7.2-fpm.sock;
}
}
然后我有一个 CNAME 将 api.internal 指向基域。它对于单层子域工作正常,但由于某种原因,对于多层子域存在问题。另外,我正在使用 argo 隧道,因此我无法使用 A 记录将记录直接指向 IP 地址。
答案1
解决了这个问题,我忘记了配置中的 listen 127.0.0.1:8000; 指令