所以我正在为我的Craft CMS应用程序开发GAE Flex。我正在使用nginx和主管mysql_tunnel来提供这项服务。
我正在尝试配置 Google 提供的运行状况检查以确保服务已启动,但由于某种原因它不起作用。
liveness_check:
path: "/_ah/health.php"
check_interval_sec: 30
timeout_sec: 4
failure_threshold: 2
success_threshold: 2
这是我在 app.yaml 文件上的配置,当我检查 GAE 上的运行状况检查时,它显示它们返回 301 而不是预期的 200。我已经测试了在容器上关闭我的服务,它显示应用程序正常,即使它不是。
对于有类似问题的任何人。
我能够成功解决这个问题。这是问题 这一切都来自我的nginx配置,该配置设置为将所有流量重定向到www。我的网站版本,因为我需要强制执行这一点。
我的nginx设置为301所有请求到我的网站的www版本,这导致健康作业重定向并返回301错误。我在nginx.conf的顶部添加了这个服务器块,以接收所有默认服务器请求以及我的健康检查位置来处理它们,这修复了它:
server {
listen 8080 default_server;
location ~ ^/_ah/ {
root /var/www/public;
try_files $uri =404;
fastcgi_split_path_info ^(.+?.php)(/.*)$;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param PATH_INFO $fastcgi_path_info;
fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info;
fastcgi_pass localhost:9000;
fastcgi_index index.php;
}
}
希望这可以帮助尝试在Google App Engine Flex上配置自定义运行状况检查并在其网站上具有自定义nginx规则的人们