nginx 服务器上 magento 出现 500 内部服务器错误

nginx 服务器上 magento 出现 500 内部服务器错误

我一直在尝试使用 nginx 在本地开发服务器上设置 magento 网站。我设法使它们部分工作。出于某种原因,主页可以正常加载,但只要我单击任何链接,就会出现“500内部服务器错误'. nginx 错误日志显示:

555 rewrite or internal redirection cycle while processing "/index.php", client: 127.0.0.1, server: mage1.dev, request: "GET /htdocs/admin HTTP/1.1", host: "gb-posters.mage1.dev"

这是我的配置文件:

server {
listen 80;

autoindex on;
# Add index.php to the list if you are using PHP
index index.html index.php;

server_name *.mage1.dev;
root /var/www/projects/$http_host/;

include include.d/mage1.conf;

}

这是 mage1.conf 文件:

location / {
    index index.html index.php; ## Allow a static html file to be shown first
    try_files $uri $uri/ @handler; ## If missing pass the URI to Magento's front handler

}

#location ~*  \.(jpg|jpeg|png|gif|ico|css|js)$ {
#   #expires 365d;
#    try_files $uri @statichandler;
#}

## These locations would be hidden by .htaccess normally
location ^~ /app/                { deny all; }
location ^~ /includes/           { deny all; }
location ^~ /lib/                { deny all; }
location ^~ /media/downloadable/ { deny all; }
location ^~ /pkginfo/            { deny all; }
location ^~ /report/config.xml   { deny all; }
location ^~ /var/                { deny all; }

location /var/export/ { ## Allow admins only to view export folder
    auth_basic           "Restricted"; ## Message shown in login window
    auth_basic_user_file htpasswd; ## See /etc/nginx/htpassword
    autoindex            on;
}

location  /. { ## Disable .htaccess and other hidden files
    return 404;
}

location @statichandler { ## Magento uses a common front handler
    rewrite ^(.*)\.(\d*)\.(jpg|jpeg|png|gif|ico|css|js)$ /$1.$3;
}

location @handler { ## Magento uses a common front handler
    rewrite / /index.php;
}

location ~ .php/ { ## Forward paths like /js/index.php/x.js to relevant handler
    rewrite ^(.*.php)/ $1 last;
}

location ~ .php$ { ## Execute PHP scripts
    if (!-e $request_filename) { rewrite / /index.php last; } ## Catch 404s that try_files miss
if ($magecode = false) {
    set $magecode "default";
}

if ($magetype = false) {
    set $magetype "store";
}

    expires        off; ## Do not cache dynamic content
    fastcgi_pass   127.0.0.1:9000;
    #fastcgi_param  HTTPS $fastcgi_https;
    fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
    fastcgi_param  MAGE_RUN_CODE $magecode; ## Store code is defined in administration > Configuration > Manage Stores
    fastcgi_param  MAGE_RUN_TYPE $magetype;
    include        fastcgi_params; ## See /etc/nginx/fastcgi_params

}

相关内容