84 lines
2.5 KiB
Nginx Configuration File
84 lines
2.5 KiB
Nginx Configuration File
server {
|
|
listen 80;
|
|
server_name YOUR_DOMAIN;
|
|
location / { return 301 https://$host$request_uri; }
|
|
}
|
|
server {
|
|
listen 443 ssl;
|
|
server_name YOUR_DOMAIN;
|
|
ssl_protocols TLSv1.2;
|
|
ssl_ciphers HIGH:!MEDIUM:!LOW:!aNULL:!NULL:!SHA;
|
|
ssl_prefer_server_ciphers on;
|
|
ssl_session_cache shared:SSL:10m;
|
|
ssl_certificate /etc/CHANGE_THIS/fullchain.pem;
|
|
ssl_certificate_key /etc/CHANGE_THIS/privkey.pem;
|
|
keepalive_timeout 70;
|
|
sendfile on;
|
|
client_max_body_size 0;
|
|
root /srv/http;
|
|
index index.php;
|
|
location ~* (?:DESIGN|(?:gpl|README|LICENSE)[^.]*|LEGALNOTICE)(?:\.txt)*$ {
|
|
return 302 /;
|
|
}
|
|
location ~* \.(?:bat|git|ini|sh|svn[^.]*|txt|tpl|xml)$ {
|
|
return 404;
|
|
}
|
|
|
|
# Main
|
|
rewrite ^/home/?$ / permanent;
|
|
rewrite ^/login/?$ /login/login.php break;
|
|
rewrite ^/auth/?$ /login/auth.php break;
|
|
rewrite ^/logout/?$ /login/logout.php break;
|
|
rewrite ^/terms/?$ /login/terms.php break;
|
|
|
|
# LTL
|
|
rewrite ^/local/?$ /local.php break;
|
|
|
|
# FTL
|
|
rewrite ^/federated/?$ /federated.php break;
|
|
|
|
# Notice
|
|
rewrite ^/notifications/?$ /notifications.php break;
|
|
|
|
# Who to follow
|
|
rewrite ^/whotofollow/?$ /who_to_follow.php break;
|
|
|
|
# Search
|
|
rewrite ^/search/?$ /search_hash_tag.php break;
|
|
rewrite ^/search/users/?$ /search_user.php break;
|
|
|
|
# Settings
|
|
rewrite ^/settings/?$ /settings_general.php break;
|
|
rewrite ^/settings/profile/?$ /settings_profile.php break;
|
|
rewrite ^/settings/appearance/?$ /settings_appearance.php break;
|
|
|
|
# User
|
|
rewrite ^/@(.+)@(.+)\.([a-z]+)/?$ /user.php?user=@$1@$2\.$3 break;
|
|
rewrite ^/@(.+)@(.+)\.([a-z]+)/status/(.+?)?$ /user.php?user=@$1@$2\.$3&status=$4 break;
|
|
rewrite ^/@(.+)@(.+)\.([a-z]+)/media/?$ /user_only_media.php?user=@$1@$2\.$3 break;
|
|
rewrite ^/@(.+)@(.+)\.([a-z]+)/with_replies/?$ /user_include_replies.php?user=@$1@$2\.$3 break;
|
|
rewrite ^/@(.+)@(.+)\.([a-z]+)/followers/?$ /user_followers.php?user=@$1@$2\.$3 break;
|
|
rewrite ^/@(.+)@(.+)\.([a-z]+)/following/?$ /user_following.php?user=@$1@$2\.$3 break;
|
|
rewrite ^/@(.+)@(.+)\.([a-z]+)/favourites/?$ /user_favorite.php?user=@$1@$2\.$3 break;
|
|
|
|
# Image
|
|
rewrite ^/avatars/original/missing.png$ /assets/images/missing.png break;
|
|
rewrite ^/headers/original/missing.png$ /assets/images/missing_header.png break;
|
|
|
|
# 404
|
|
rewrite ^/404/?$ /404.php break;
|
|
|
|
location ~ [^/]\.php(/|$) {
|
|
fastcgi_split_path_info ^(.+?\.php)(/.*)$;
|
|
if (!-f $document_root$fastcgi_script_name) {
|
|
return 404;
|
|
}
|
|
fastcgi_buffers 8 256k;
|
|
fastcgi_buffer_size 128k;
|
|
fastcgi_intercept_errors on;
|
|
include fastcgi_params;
|
|
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
|
|
fastcgi_pass unix:/var/run/php/php7.0-fpm.sock;
|
|
}
|
|
}
|