location expression - PHP treated as binary file
technoplague
nginx-forum at nginx.us
Tue Sep 25 03:04:07 UTC 2012
Hi,
Having following configuration, PHP files, if requested from /junk or /pub
locations, are treated as binary. Sample request - domain.com/pub/i.php ->
file is downloaded to PC instead of executing.
Have no problems serving PHP files from other locations. Having separate
locations for /pub /junk with autoindex also works, however my intention is
to combine them in one expression.
upstream www-default {
server unix:/dev/shm/www-default.sock;
}
server {
listen 80;
server_name _;
index index.php index.html;
fastcgi_index index.php;
root /data/www/default/htdocs;
charset utf-8;
access_log /data/www/default/logs/frontend/access.log;
error_log /data/www/default/logs/frontend/error.log;
client_max_body_size 8m;
location ~* \.(jpg|jpeg|gif|css|png|js|swf|ico)$ {
expires max;
}
location / {
try_files $uri $uri/ /index.html;
}
location ~ (/\.svn|/\.ht) {
deny all;
}
location ~* ^/(pub/|junk/) {
autoindex on;
}
location ~ \.php$ {
fastcgi_split_path_info ^(.+\.php)(.*)$;
fastcgi_pass www-default;
fastcgi_param SCRIPT_FILENAME
$document_root$fastcgi_script_name;
fastcgi_param PATH_INFO $fastcgi_path_info;
include /etc/nginx/fastcgi_params;
}
}
Posted at Nginx Forum: http://forum.nginx.org/read.php?2,231018,231018#msg-231018
More information about the nginx
mailing list