Reputation: 7935
I am trying to configure my nginx server to serve php files.
I have installed php 7.1 (with fpm) using brew. php -v
and phpfpm -v
gives me the good version.
My nginx config looks as follows:
server {
listen 80;
server_name localhost;
access_log /Library/Logs/nginx/access.log main;
location / {
root /Users/tomek/Sites;
index index.html index.htm index.php;
try_files $uri $uri/ /index.php?$args;
}
#error_page 404 /404.html;
# redirect server error pages to the static page /50x.html
#
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
location ~ \.php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_index index.php;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root/$fastcgi_script_name;
}
}
What should I do?
Upvotes: 0
Views: 635
Reputation: 4370
The problem is probably because of:
fastcgi_param SCRIPT_FILENAME $document_root/$fastcgi_script_name;
Here is a sample nginx configuration file I use on my server and it should work fine for you too:
server {
listen 80;
server_name _ default_server;
root /usr/share/nginx/html/;
# Main Settings
location / {
root /usr/share/nginx/YOUR_PHP_FOLDER;
index index.php;
try_files $uri $uri/ /index.php$is_args$args;
location ~ \.php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
fastcgi_read_timeout 300;
}
location ~* \.(jpg|jpeg|png|gif|ico|css|js)$ {
expires 365d;
gzip_vary on;
}
}
# Handle Not Found Page
error_page 404 /404.html;
# Handle Server Errors
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/html;
}
# Disable Apache .htaccess
location ~ /\.ht {
deny all;
}
}
Upvotes: 2