我用的是最新的脚本,选择的 SNI 方式部署的,部署完发现三个问题:
- 续签的时候,发现会续签失败。
- h3 访问伪装站点(直连)的时候,提示缺少 Host 导致没有办法访问。
- cloudreve v4 的 dockerfile 中 postgre 是 latest 的时候,启动不了
续签我看到的是,acme.sh renew 的时候会通过 80 端口去校验 .well-known 下的文件,但是当前的配置没法访问到。
因为本来预期被 redirect.conf 接管的流量走到 restrict.conf 了,给 redirect.conf 的 server 块设置上 server_name 就好了。不配置 server_name 貌似只有 Host 为空的时候才能走到。
|
# HTTP redirect |
|
server { |
|
listen 80 reuseport; |
|
listen [::]:80 reuseport; |
|
include nginxconfig.io/zerossl.conf; |
|
# include nginxconfig.io/limit.conf; |
|
|
|
location / { |
|
return 301 https://$host$request_uri; |
|
} |
|
} |
|
server { |
|
listen 80 default_server; |
|
listen [::]:80 default_server; |
|
server_name _; |
|
return 444; |
|
} |
h3 那个我看是,quic 的流量反代到 cloudreve 的 server 块的时候,没有 $http_proxy 导致没有 Host header,直接 400 了。 我把这行改成 $host 或删掉就正常了。(但总觉得不正确)
|
proxy_set_header Host $http_host; |
cloudreve v4 我把 postgre 的镜像版本换成 17 就正常了。
这是我遇到的些问题,不过我对 nginx 不熟悉,不确定这么做对不对。辛苦作者确认一下吧
我用的是最新的脚本,选择的 SNI 方式部署的,部署完发现三个问题:
续签我看到的是,
acme.sh renew的时候会通过 80 端口去校验.well-known下的文件,但是当前的配置没法访问到。因为本来预期被
redirect.conf接管的流量走到restrict.conf了,给redirect.conf的 server 块设置上server_name就好了。不配置server_name貌似只有 Host 为空的时候才能走到。Xray-script/config/nginx/conf/conf.d/redirect.conf
Lines 1 to 11 in fdd3664
Xray-script/config/nginx/conf/conf.d/restrict.conf
Lines 1 to 6 in fdd3664
h3 那个我看是,quic 的流量反代到 cloudreve 的 server 块的时候,没有
$http_proxy导致没有 Host header,直接 400 了。 我把这行改成$host或删掉就正常了。(但总觉得不正确)Xray-script/config/nginx/conf/web/cloudreve.conf
Line 4 in fdd3664
cloudreve v4 我把 postgre 的镜像版本换成 17 就正常了。
这是我遇到的些问题,不过我对 nginx 不熟悉,不确定这么做对不对。辛苦作者确认一下吧