Nginx -将位置重写为root(pgadmin 4)

j91ykkif  于 2023-11-17  发布在  Nginx
关注(0)|答案(1)|浏览(170)

我得到了这个nginx配置:

server {
    listen 80;
    return 301 https://$host$request_uri;
}

server {
    listen 443;
    server_name my-pgadmin.local;
    
    ssl_certificate /etc/ssl/certs/my-pgadmin.local.crt;
    ssl_certificate_key /etc/ssl/private/my-pgadmin.local.key;
    
    ssl on;
    ssl_session_cache builtin:1000 shared:SSL:10m;
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
    ssl_ciphers HIGH:!aNULL:!eNULL:!EXPORT:!CAMELLIA:!DES:!MD5:!PSK:!RC4;
    ssl_prefer_server_ciphers on;

    location /pgadmin4/ {
        proxy_set_header X-Script-Name /pgadmin4;
        proxy_set_header X-Scheme $scheme;
        proxy_set_header Host $host;
        proxy_pass http://localhost:7070/;
        proxy_redirect off;
    }
}

字符串
在我的浏览器上,当我输入:'https://my-pgadmin.local'我重定向到'https://my-pgadmin.local/websitepgadmin4/browser/website*'这似乎是一个静态路径。
我如何重写URL以隐藏'/pgadmin 4/browser'而只有'https://my-pgadmin.local'?
谢谢你!

8iwquhpp

8iwquhpp1#

如果你是nginx的新手,你的配置文件已经过时了。使用listen 443 ssl而不是使用ssl on
如果安全性很重要,您可以使用此指令http2 on启用HTTP/2。不再使用协议TLSv 1 TLSv1.1。TLSv1.2仍然可以使用,但建议在配置强密码时使用。
这里是对您问题的回答。example.com将被代理到example.com/pgadmin 4/browserexample.com/pgadmin 4/browser将被代理到example.com/pgadmin 4/browser。如果您有任何问题,请随时发表评论。

location / {
    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 X-Forwarded-Proto $scheme;
    sub_filter '/pgadmin4/browser/' '/';
    sub_filter_once off;

 
    location /pgadmin4/browser {
        proxy_pass http://express:3000/pgadmin4/browser/;
    }
    proxy_pass http://express:3000/pgadmin4/browser/;
}

字符串

相关问题