Nginx开proxy_protocol协议出错

在nginx的配置文件添加protocol协议之后就出错,日志也是乱码;
不清楚是不是配置有问题,求助 :sob:

贴一下配置

以下为配置,这个配置应用之后所有网站都无法访问了,要用IP登录后改回原来的配置才可以

server {
    listen 80 ; 
    listen 443 ssl http2 proxy_protocol; 
    server_name *.frp.mydomain.cn; 
    index index.php index.html index.htm default.php default.htm default.html; 
    proxy_set_header Host $host; 
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 
    proxy_set_header X-Forwarded-Host $server_name; 
    proxy_set_header X-Real-IP $remote_addr; 
    proxy_http_version 1.1; 
    proxy_set_header Upgrade $http_upgrade; 
    proxy_set_header Connection "upgrade"; 
    access_log /www/sites/AllHttpForFrps/log/access.log; 
    error_log /www/sites/AllHttpForFrps/log/error.log; 
    access_by_lua_file /www/common/waf/access.lua; 
    set $RulePath /www/sites/AllHttpForFrps/waf/rules; 
    set $logdir /www/sites/AllHttpForFrps/log; 
    set $redirect on; 
    set $attackLog on; 
    set $CCDeny off; 
    set $urlWhiteAllow off; 
    set $urlBlockDeny off; 
    set $argsDeny off; 
    set $postDeny off; 
    set $cookieDeny off; 
    set $fileExtDeny off; 
    set $ipBlockDeny off; 
    set $ipWhiteAllow off; 
    location ~ /.well-known/acme-challenge {
        allow all; 
        root /usr/share/nginx/html; 
    }
    include /www/sites/AllHttpForFrps/proxy/*.conf; 
    ssl_certificate /www/sites/AllHttpForFrps/ssl/fullchain.pem; 
    ssl_certificate_key /www/sites/AllHttpForFrps/ssl/privkey.pem; 
    ssl_protocols TLSv1.3 TLSv1.2 TLSv1.1 TLSv1; 
    ssl_ciphers EECDH+CHACHA20:EECDH+CHACHA20-draft:EECDH+AES128:RSA+AES128:EECDH+AES256:RSA+AES256:EECDH+3DES:RSA+3DES:!MD5; 
    ssl_prefer_server_ciphers on; 
    ssl_session_cache shared:SSL:10m; 
    ssl_session_timeout 10m; 
    add_header Strict-Transport-Security "max-age=31536000"; 
    error_page 497 https://$host$request_uri; 
    proxy_set_header X-Forwarded-Proto https; 
    ssl_stapling on; 
    ssl_stapling_verify on; 
}

location ^~ / {
    proxy_pass http://127.0.0.1:11080; 
    proxy_set_header Host $host; 
    proxy_set_header X-Real-IP $remote_addr; 
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 
    proxy_set_header REMOTE-HOST $remote_addr; 
    proxy_set_header Upgrade $http_upgrade; 
    proxy_set_header Connection "upgrade"; 
    proxy_http_version 1.1; 
    add_header X-Cache $upstream_cache_status; 
    add_header Strict-Transport-Security "max-age=31536000"; 
}

这个就不应该加在这 加在这所有的访问都会代理到这里

不好意思没有分开写,这两段一个是配置文件一个是反代的源文:

那你得看一下 openresty 的日志了

我也遇到这个问题,只是在一个网站的server中配置了proxy_protocol,然后其他的网站都提示证书错误,感觉是全局生效了。

通过查阅资料,原来这个proxy_protocol是对端口生效的,不是只对server节点生效,所以只能分开端口去配置。