# rewrite to front controller as default rule
location / {
- if (!-e $request_filename) {
- rewrite ^(.*)$ /index.php?pagename=$1;
- }
+ try_files $uri /index.php?pagename=$uri&$args;
}
# make sure webfinger and other well known services aren't blocked
# by denying dot files and rewrite request to the front controller
location ^~ /.well-known/ {
allow all;
- if (!-e $request_filename) {
- rewrite ^(.*)$ /index.php?pagename=$1;
- }
+ try_files $uri /index.php?pagename=$uri&$args;
}
include mime.types;
- # block these file types
- location ~* \.(tpl|md|tgz|log|out)$ {
- deny all;
- }
+ # statically serve these file types when possible otherwise fall back to
+ # front controller allow browser to cache them added .htm for advanced source
+ # code editor library
+ #location ~* \.(jpg|jpeg|gif|png|ico|css|js|htm|html|ttf|woff|svg)$ {
+ # expires 30d;
+ # try_files $uri /index.php?pagename=$uri&$args;
+ #}
# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
# or a unix socket
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}
+ # block these file types
+ location ~* \.(tpl|md|tgz|log|out)$ {
+ deny all;
+ }
+
# deny access to all dot files
location ~ /\. {
deny all;