3

php-fpm を使用して nginx 1.9.3 に Magento 2.0.2 をインストールするためのサポートが必要です)。

発生している問題は、解凍後に /setup にアクセスするときです。「setup/index.php/navigation」で 403 が表示されるだけでなく、ページがアクセスしようとする他の URL も表示されます。

この背後にある問題は、「ナビゲーション」を引数として index.php ファイルに渡しておらず、実際に「index.php/navigation」をファイルとして探し、それを php5-fpm に渡そうとしていることです。 security.limit_extensions がトリガーされ、403 が発生します。

問題は、リクエストを適切に処理するにはどうすればよいかということです。EX セットアップ index.php によってレンダリングされる JavaScript が index.php/navigation を要求するとき、index.php/navigation のように "index.php/navigation" でファイルを探すのではなく、引数として index.php に渡されるようにするにはどうすればよいですか? .php はディレクトリでした。

4

1 に答える 1

8

私が見ることができるように、この問題はますます一般的になっています。fastcgi_split_path_info を定義する必要があるようです。nginx.conf.sample /setup ロケーション ブロックを変更してみてください (## でソリューション コードを指しています)。

location /setup {
root $MAGE_ROOT;
location ~ ^/setup/index.php {

    ### This fixes the problem:
    fastcgi_split_path_info ^(.+?\.php)(/.*)$;
    ################################

    fastcgi_pass   fastcgi_backend;
    fastcgi_index  index.php;
    fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
    include        fastcgi_params;
}

location ~ ^/setup/(?!pub/). {
    deny all;
}

location ~ ^/setup/pub/ {
    add_header X-Frame-Options "SAMEORIGIN";
}}
于 2016-02-17T00:19:55.723 に答える