-
-
Save mstroeck/4563c202c2a912ce0c41c8abc8a8ec92 to your computer and use it in GitHub Desktop.
NGINX configuration for Grav CMS.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
server { | |
listen 80; | |
server_name localhost; # Change this with your domain name | |
root /var/www/grav; # The place were you have setup your Grav install; | |
index index.php; | |
error_page 500 502 503 504 /50x.html; | |
location = /50x.html { | |
root html; | |
} | |
location / { | |
root /var/www/grav; | |
index index.php; | |
if (!-e $request_filename){ rewrite ^(.*)$ /index.php last; } | |
} | |
# if you want grav in a sub-directory of your main site | |
# (for example, example.com/mygrav) then you need this rewrite: | |
location /mygrav { | |
index index.php; | |
if (!-e $request_filename){ rewrite ^(.*)$ /mygrav/$2 last; } | |
try_files $uri $uri/ /index.php?$args; | |
} | |
# if using grav in a sub-directory of your site, | |
# prepend the actual path to each location | |
# for example: /mygrav/images | |
# and: /mygrav/user | |
# and: /mygrav/cache | |
# and so on | |
location /images/ { | |
# Serve images as static | |
} | |
location /user { | |
rewrite ^/user/accounts/(.*)$ /error redirect; | |
rewrite ^/user/config/(.*)$ /error redirect; | |
rewrite ^/user/(.*)\.(txt|md|html|php|yaml|json|twig|sh|bat)$ /error redirect; | |
} | |
location /cache { | |
rewrite ^/cache/(.*) /error redirect; | |
} | |
location /bin { | |
rewrite ^/bin/(.*)$ /error redirect; | |
} | |
location /backup { | |
rewrite ^/backup/(.*) /error redirect; | |
} | |
location /system { | |
rewrite ^/system/(.*)\.(txt|md|html|php|yaml|json|twig|sh|bat)$ /error redirect; | |
} | |
location /vendor { | |
rewrite ^/vendor/(.*)\.(txt|md|html|php|yaml|json|twig|sh|bat)$ /error redirect; | |
} | |
# Remember to change 127.0.0.1:9000 to the Ip/port | |
# you configured php-cgi.exe to run from | |
location ~ \.php$ { | |
root /var/www/grav; | |
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; | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment