Назад | Перейти на главную страницу

Конфигурация Nginx Magento возвращает 404, но загружает HTML

Последние пару дней я занимался переводом нашего сайта Magento с общего хостинга на VPS. VPS использует Nginx с php-fpm.

Заметка В настоящее время у нас также возникают проблемы с переносом нашего доменного имени, поэтому, когда я пытался протестировать VPS, я использовал его адрес ipv4.

Эта проблема

Когда я просматриваю адрес сервера в браузере, заголовок страницы - «404 Not Found», CSS не загружается, однако отображаются такие элементы html, как ссылки; когда я пытаюсь получить доступ к бэкэнду Magento, я перенаправляюсь на страницу «Добро пожаловать в Nginx».

конфигурация vhost

server {
# Listen on port 80 as well as post 443 for SSL connections.
listen 80;
listen 443 default ssl;

server_name 176.126.242.85;## yourdomain.com www.yourdomain.com;

# Specify path to your SSL certificates.
#ssl_certificate /etc/nginx/certificates/yourcertificate.crt;
#ssl_certificate_key /etc/nginx/certificates/yourcertificate.key;

# Path to the files in which you wish to
# store your access and error logs.
access_log /path/to/your/logs/access_log;
error_log /path/to/your/logs/error_log;

# If the site is accessed via yourdomain.com
# automatically redirect to www.yourdomain.com.
#if ($host = 'yourdomain.com' ) {
#    rewrite ^/(.*)$ http://176.126.242.85/$1permanent;
#}

root /var/www/infepos;

location / {
    index index.html index.php;
    try_files $uri $uri/ @handler;
}

# Deny access to specific directories no one
# in particular needs access to anyways.
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; }

# Allow only those who have a login name and password
# to view the export folder. Refer to /etc/nginx/htpassword.
location /var/export/ {
    auth_basic "Restricted";
    auth_basic_user_file htpasswd;
    autoindex on;
}

# Deny all attempts to access hidden files
# such as .htaccess, .htpasswd, etc...
location ~ /\. {
 deny all;
     access_log off;
     log_not_found off;
}

# This redirect is added so to use Magentos
# common front handler when handling incoming URLs.
location @handler {
    rewrite / /index.php;
}

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

# Handle the exectution of .php files.
location ~ .php$ {
    if (!-e $request_filename) {
        rewrite / /index.php last;
    }
    expires off;
    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 default;
    fastcgi_param MAGE_RUN_TYPE store;
    include fastcgi_params;
}
}

Я новичок в использовании Magento и Nginx, и любая помощь будет очень признательна.

Мне удалось устранить ошибку.

Проблема заключалась в том, что у меня был виртуальный хост по умолчанию с тем же именем сервера, что и у моего пользовательского виртуального хоста.