【问题标题】:nginx rewrite url removing subfoldernginx重写url删除子文件夹
【发布时间】:2023-03-09 21:07:01
【问题描述】:

我在 nginx 中重写一些 url 有点挣扎

我有一个网站:foo.com/

foo.com/index.html 有一个指向 foo.com/bar.cgi 的链接(可能带有 GET 争论)

我的 cgi 位于 /var/www/site/cgi-bin/,因此可以通过 foo.com/cgi-bin/bar.cgi 访问它

我希望重写会删除 cgi-bin 部分

    location ~ \.cgi$ {
        root /var/www/localhost;
        #rewrite ^/cgi-bin/(.*)$ $1 permanent;

        fastcgi_param SCRIPT_FILENAME/ /var/www/localhost$fastcgi_script_name;
        include /etc/nginx/fastcgi.conf;
        fastcgi_pass unix:/var/run/fcgi.sock-1;
        }

【问题讨论】:

  • 尝试更改您的 rewrite 指令:将 permanent 替换为 break

标签: url-rewriting nginx


【解决方案1】:

根据您的描述,您只需将 fastcgi 指向正确的位置:

fastcgi_param SCRIPT_FILENAME var/www/site/cgi-bin$fastcgi_script_name;

【讨论】:

    猜你喜欢
    • 2023-04-03
    • 2020-07-05
    • 2020-02-26
    • 1970-01-01
    • 2018-05-25
    • 1970-01-01
    • 1970-01-01
    • 2021-09-11
    • 2020-09-06
    相关资源
    最近更新 更多