When i try accessing info.php
I get a File not found.
error.
I tried some Tutorials to no avail.
Configs:
default:
server {
listen 80;
listen [::]:80 default ipv6only=on;
server_name localhost;
location / {
root /var/www;
index index.html index.htm index.php;
}
# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
#
location ~ \.php$ {
fastcgi_pass 127.0.0.1:7777;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /usr/share/nginx/html$fastcgi_script_name;
fastcgi_buffers 256 128k;
#fastcgi_buffer_size 16k;
#fastcgi_busy_buffers_size 256k;
fastcgi_connect_timeout 300s;
fastcgi_send_timeout 300s;
fastcgi_read_timeout 300s;
include fastcgi_params;
}
}
What's the problem?
If that info.php is in /var/www, then it's wrong to instruct fast_cgi to look for
/usr/share/nginx/html/info.php;
Use the same root for html and php. Also, root
and index
parameters should be outside a particular location except for very specific uses.
server {
listen 80;
listen [::]:80 default ipv6only=on;
server_name localhost;
root /var/www;
index index.html index.htm index.php;
#pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
location ~ \.php$ {
fastcgi_pass 127.0.0.1:7777;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_buffers 256 128k;
fastcgi_connect_timeout 300s;
fastcgi_send_timeout 300s;
fastcgi_read_timeout 300s;
include fastcgi_params;
}
}
needless to say, you still need to make sure your php-fpm service is listening at port 7777. Common case is to have it listening at port 9000.
If you checked every thing and it's correct configured, then there is last point i got:
- check that correct username if mentioned in file
/etc/php-fpm.d/www.conf
server {
listen 80;
listen [::]:80 default ipv6only=on;
server_name localhost;
root /var/www;
location / {
index index.php;
}
location ~ \.php(?:$|/) {
fastcgi_pass 127.0.0.1:7777;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_buffers 256 128k;
fastcgi_connect_timeout 300s;
fastcgi_send_timeout 300s;
fastcgi_read_timeout 300s;
include fastcgi_params;
}
}
Nginx & Symlinks
Note, if root /var/www;
is a symlink, change it to root /var/www/;
otherwise nginx won't go past the symlink and you'll get a File not found
error
I took a long look at this, in the end turned out that FPM wasn't running :-s in my case a simple service php7.2-fpm restart did the trick!
I had this issue and none of the answers here worked. The issue for me ended up being caused by SELinux. I disabled SELinux and it fixed the issue.
Be aware that disabling SELinux does have an impact on security. There's almost certainly a better way to fix this, but disabling SELinux works for my purposes.