So I am attempting to install IP Board on my droplet, running into issues that I fear are incredibly simple. Nginx is returning a 500 error when I try to access a php index file. I’m almost 100% sure I have no configured nginx right, I’m just not sure what to fix.
This is my sites-enabled default file. server { listen 80 default_server; listen [::]:80 default_server;
# SSL configuration
#
# listen 443 ssl default_server;
# listen [::]:443 ssl default_server;
#
# Note: You should disable gzip for SSL traffic.
# See: https://bugs.debian.org/773332
#
# Read up on ssl_ciphers to ensure a secure configuration.
# See: https://bugs.debian.org/765782
#
# Self signed certs generated by the ssl-cert package
# Don't use them in a production server!
#
# include snippets/snakeoil.conf;
root /var/www/html;
# Add index.php to the list if you are using PHP
index index.php index.html index.htm index.nginx-debian.html;
localhost;
location / {
# First attempt to serve request as file, then
# as directory, then fall back to displaying a 404.
try_files $uri $uri/ =404;
rewrite ^/(.*)/$ /?page=$1 last;
rewrite ^(.*[^/])$ $1/ permanent;
}
# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
#
location ~ \.php$ {
include snippets/fastcgi-php.conf;
#
# # With php7.0-cgi alone:
# fastcgi_pass 127.0.0.1:9000;
# # With php7.0-fpm:
fastcgi_pass unix:/run/php/php7.0-fpm.sock;
}
# deny access to .htaccess files, if Apache's document root
# concurs with nginx's one
#
#location ~ /\.ht {
# deny all;
#}
}
#server {
This textbox defaults to using Markdown to format your answer.
You can type !ref in this text area to quickly search our full set of tutorials, documentation & marketplace offerings and insert the link!
This comment has been deleted
my current config file: server { listen 80 default_server; listen [::]:80 default_server; server_name crew289.com www.crew289.com;
root /var/www/html;
location /
{
try_files $uri $uri/ /index.php?$args;
}
location ~ [^/]\.php(/|$) {
fastcgi_split_path_info ^(.+?\.php)(/.*)$;
fastcgi_pass unix:/run/php/php7.0-fpm.sock;
fastcgi_index index.php;
include fastcgi_params.conf;
}
}
As long as PHP-FPM is installed, the following should be all that you need to get things working.
server
{
listen 80 default_server;
listen [::]:80;
server_name yourdomain.com www.yourdomain.com;
root /path/to/home/directory;
location /
{
try_files $uri $uri/ =404;
}
location ~ [^/]\.php(/|$) {
fastcgi_split_path_info ^(.+?\.php)(/.*)$;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
include fastcgi_params.conf;
}
}
You’d need to modify the above to suit your domain, and your home directory (i.e root), then reload NGINX
The only issue you may run in to is with the default location block. That may need to be changed to something like the below as the default for the one above is to throw a 404 if a file or directory is not found.
try_files $uri $uri/ /index.php?$args;
You may also need to change:
fastcgi_pass 127.0.0.1:9000;
to:
fastcgi_pass unix:/run/php/php7.0-fpm.sock;
If you’ve not set PHP-FPM up to use TCP (it defaults to sockets, which is what you have set).
Get paid to write technical tutorials and select a tech-focused charity to receive a matching donation.
Full documentation for every DigitalOcean product.
The Wave has everything you need to know about building a business, from raising funding to marketing your product.
Stay up to date by signing up for DigitalOcean’s Infrastructure as a Newsletter.
New accounts only. By submitting your email you agree to our Privacy Policy
Scale up as you grow — whether you're running one virtual machine or ten thousand.
Sign up and get $200 in credit for your first 60 days with DigitalOcean.*
*This promotional offer applies to new accounts only.