8

PHP-FPMが設定されたNginxHTTPサーバーがあり、ほとんどすべてが正常に動作します。私は行くことができるようになりたいです、path/to/fileそしてそれは私にそれを与えますindex.php?url=path/to/file、それはそうします。ただし、実際のP​​HPをダウンロードし、ブラウザでは実行しません。何が原因なのかわかりません。

Nginx構成:

server {
    listen 80;
    server_name sandbox.domain.tld;
    access_log /path/to/domain/log/sandbox.access.log;
    error_log /path/to/domain/log/sandbox.error.log;

    location / {
        root /path/to/sandbox;
        index index.php;

        if (!-e $request_filename) {
            rewrite ^/beta/(.+)$ /beta/index.php?url=$1 break;
        }
    }

    location ~ \.php$ {
        fastcgi_pass 127.0.0.1:9000;
        fastcgi_index index.php;
        include /usr/local/nginx/conf/fastcgi_params;
        fastcgi_param SCRIPT_FILENAME /path/to/sandbox$fastcgi_script_name;
    }
4

1 に答える 1

19

変更してみてください

rewrite ^/beta/(.+)$ /beta/index.php?url=$1 break;

rewrite ^/beta/(.+)$ /beta/index.php?url=$1 last; break;

これにより、nginxがURIを再読み取りし、それに応じて処理する必要があります。

于 2012-12-20T22:06:56.593 に答える