我有一个nginx容器和一个php-fpm容器。 我使用K8S,两个容器都在同一个容器中。 我想配置nginx超时或类似的东西等待上游。
这是我的配置:
server {
server_name mywebserver;
root /myapp;
location / {
try_files $uri /index.php$is_args$args;
}
location ~ ^/index\.php(/|$) {
resolver 127.0.0.1 valid=30s;
fastcgi_pass myapp:9000;
proxy_connect_timeout 120;
proxy_read_timeout 120;
fastcgi_split_path_info ^(.+\.php)(/.*)$;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name;
fastcgi_param DOCUMENT_ROOT $realpath_root;
internal;
}
location ~ \.php$ {
return 404;
}
error_log /var/log/nginx/error.log;
access_log /var/log/nginx/access.log;
}
我补充说:
proxy_connect_timeout 120;
proxy_read_timeout 120;
但它似乎无法正常工作。 有没有可靠的解决方案?
答案 0 :(得分:0)
resolver 127.0.0.1 valid=30s;
fastcgi_pass myapp:9000;
几乎没有任何意义,只需去127.0.0.1,除非你想在myapp
后端之间进行负载均衡,在这种情况下,将它们保存在同一个pod中是违反直觉的,你应该使用php- fpm作为单独的后端部署和服务