在Nginx安装页面上安装Magento 2.0.2无法正常运行

时间:2016-02-16 20:43:09

标签: php magento nginx rewrite magento-2.0

需要一些帮助在nginx 1.9.3上使用php-fpm安装Magento 2.0.2目前我正在使用Magento提供的默认配置(https://github.com/magento/magento2/blob/develop/nginx.conf.sample)。

正在发生的问题是在解压缩后访问/设置时,我在“setup / index.php / navigation”上显示了403以及该页面试图访问的其他URL。

我已经意识到这背后的问题是它没有将“navigation”作为参数传递给index.php文件,并且实际上是在寻找“index.php / navigation”作为文件并尝试将其传递给php5 -fpm导致security.limit_extensions被触发,导致403。

所以问题就变成如何获得正确处理的请求? E.X.当安装index.php呈现的javascript请求index.php / navigation时,如何确保将其作为参数传递给index.php,而不是尝试在“index.php / navigation”中查找文件,就像索引一样。 php是一个目录。

1 个答案:

答案 0 :(得分:7)

正如我所看到的,这个问题变得越来越普遍。似乎fastcgi_split_path_info需要定义。尝试将nginx.conf.sample / setup location block(我用##指向解决方案代码)更改为:

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";
}}