403 Forbidden Error executing PHP scripts

February 16, 2015 14.5k views


I have a problem. I'm not sure if this is a server related problem, but I'm sure missing something with the configuration. I receive 403 Forbidden errors for PHP scripts, however regular HTML files works fine. I'm using Nginx server and here is my configuration :

server { 
listen 80; 
server_name movieslike.co www.movieslike.co; 
root /var/www/movieslike.co/html; 
index index.php index.html index.htm;

location ~ \.php$ { 
try_files $uri =404; 
fastcgi_split_path_info ^(.+\.php)(/.+)$; 
fastcgi_pass unix:/var/run/php5-fpm.sock; 
fastcgi_index index.php; 
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; 
include fastcgi_params; 

What am I missing here ? Is this a server related problem or is this something wrong with this config file ?


Edit :

I think I figured out the problem. When I go to http://movieslike.co it gives 403. When I go to http://movieslike.co/index.php then it works. Why doesn't nginx see my index.php file ?


  • Hi! Are there any errors in nginx's error log?

    sudo tail /var/log/nginx/error.log

    Your config looks proper, have you restarted nginx after editing it?

  • Hello

    I restarted it and still the same thing. There is one line I have noticed like this:

     *65 directory index of "/var/www/movieslike.co/html/" is forbidden

    I have set the chmod of the directory to 755 though.

  • It worked !

    It turns out I haven't restarted the nginx server after a few changes.

    Thanks all.

1 Answer
Have another answer? Share your knowledge.