index.php にパスを追加した Nginx ホスティング

index.php にパスを追加した Nginx ホスティング

私は Concrete5 でインスタンスをホストしていますが、動的パスの使用に加えて、 という奇妙な形式の URL も使用していますwww.mysite.com/index.php/path/to/page

ほぼ動作していますが、www.mysite.com/を表示する代わりにディレクトリをリストするため、 Nginx が へのリクエストを処理する際に問題が発生していますindex.php

  • www.mysite.com/ ->publicディレクトリをリストしますが、index.php を表示する必要があります
  • www.mysite.com/index.php/path/to/page -> 動作します!
  • www.mysite.com/some/other/path -> 動作します!

これが私の Nginx conf ファイルです:

server {

    root /srv/www/mysite.com/public_html;
    server_name mysite.com

    location / {
        try_files $uri $uri/ /index.php/$request_uri;
        autoindex on; # just for debugging...
    }

    location ~ \.php($|/) {
        set $script $uri;
        if ($uri ~ "^(.+\.php)(/.+)") {
            set $script $1;
        }
        include fastcgi_params;
        fastcgi_param SCRIPT_FILENAME $document_root$script;
        fastcgi_intercept_errors on;
        fastcgi_pass  unix:/var/run/php5-fpm.sock;
    }

}

答え1

設定が見つかりませんindex index.php;

関連情報