Passing a special Magento URL to PHP-FPM
hgv
nginx-forum at forum.nginx.org
Sat May 16 22:29:01 UTC 2020
I’m trying to learn how to pass special Magento 1.x URLs such as this to a
PHP-FPM backend.
/js/index.php/x.js?f=prototype/prototype.js,prototype/validation.js,mage/adminhtml/events.js,mage/adminhtml/form.js,scriptaculous/effects.js
All the Nginx configs I’ve found (e.g.
https://gist.github.com/rafaelstz/3bc3343017dd0118a577) include the same
configuration blocks but I wonder if this even worksfor the above-mentioned
URL?
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$ {
fastcgi_pass fpm_backend;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params; ## See /etc/nginx/fastcgi_params
}
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
expires 30d; ## Assume all files are cachable
if ($request_uri ~*
"\.(png|gif|jpg|jpeg|css|js|swf|ico|txt|xml|bmp|pdf|doc|docx|ppt|pptx|zip)$")
{
expires max;
}
# set fastcgi settings, not allowed in the "if" block
include /usr/local/etc/nginx/fastcgi_params;
fastcgi_split_path_info ^(.+\.php)(/.+)$; #this line
fastcgi_param SCRIPT_FILENAME $document_root/index.php;
fastcgi_param SCRIPT_NAME /index.php;
fastcgi_param MAGE_RUN_CODE default;
fastcgi_param MAGE_RUN_TYPE store;
# rewrite - if file not found, pass it to the backend
if (!-f $request_filename) {
fastcgi_pass fpm_backend;
break;
}
}
Posted at Nginx Forum: https://forum.nginx.org/read.php?2,288062,288062#msg-288062
More information about the nginx
mailing list