Magento 2在子文件夹Nginx中

在Ubuntu上使用Nginx 1.4.6,我正在尝试将Magento 2配置为在子文件夹中运行.

我已经在/ var / www中有一些其他的项目,它们的设置如下:

server {
    server_name website.com;

    root /var/www/;

    location /p1/ {
        # config
    }

    location /p2/ {
        # config
    }
}

但是现在,我的Magento安装位于/ mnt / storage / demo / demo-magento2,我无法找到将其包含在此服务器块中的方法.

我试图将他们的示例配置用于Nginx(https://github.com/magento/magento2/wiki/Nginx-Configuration-Settings-and-Environment-Variables).所以,我将这个位置块添加到我的服务器块配置中:

location /demos/demo-magento2/ {
  set $MAGE_ROOT /mnt/storage/demo-magento2/;
  set $MAGE_MODE developers;
  include /mnt/storage/demo-magento2/Nginx.conf.sample;
}

并且Nginx一直给我这个错误

2015/10/19 18:15:04 [emerg] 6250#0: location "/setup" is outside location "/demos/demo-magento2/" in /mnt/storage/demo-magento2/Nginx.conf.sample:27

我对Nginx很新,所以有人可以解释我如何解决这个问题吗?

解决方法:

Nginx配置对于指令所在的位置是挑剔的;因为Magento的Nginx.conf.sample包含’location’指令,所以它必须包含在“server”指令中.看一下示例配置顶部的注释掉部分;它大致显示了主配置文件应该是什么样的.

您应该有一个如下所示的根配置文件

upstream fastcgi_backend {
        server unix:/var/run/PHP5-fpm.sock;
}

server {
    listen 80;
    server_name server.dev;
    set $MAGE_ROOT /path/to/magento2;
    set $MAGE_MODE developer;
    include /path/to/magento2/Nginx.conf.sample;
 }

如果您正在使用典型的Ubuntu-Nginx设置,您将需要该文件位于/ etc / Nginx / sites-available目录下,并启用它,您需要从站点创建该文件的符号链接 – 启用目录.

相关文章

Nginx (engine x) 是一个高性能的HTTP和反向代理服务,也是一...
本地项目配置 1 复制 luffy/settings/dev.py为prop.py 修改l...
nginx不仅可以隐藏版本信息,还支持自定义web服务器信息 先看...
一 、此次漏洞分析 1 nginx HTTP/2漏洞 [nginx-announce] ng...
###进入nginx 目录cd /usr/local/nginx###递归显示 2 级目录...
在cmd命令窗口输入下面命令进行查看 tasklist /fi "ima...