Nginxconf: Difference between revisions

From GaryH Tech's Wiki
No edit summary
Undo revision 18 by Gary (talk)
 
(13 intermediate revisions by the same user not shown)
Line 1: Line 1:
<code><nowiki>#</nowiki> Redirect for wiki.garyhtech.uk
#Redirect for wiki.garyhtech.uk
        server {
        listen        80;
        server_name    wiki.garyhtech.uk;
        return        301 https://$server_name$request_uri;
        }


        server {
server {    
      listen 443 ssl;
      #listen [::]:80;
      http2 on;
      server_name wiki.garyhtech.uk;
      ssl_certificate      /usr/local/etc/letsencrypt/live/garyhtech.uk/fullchain.pem;
      ssl_certificate_key  /usr/local/etc/letsencrypt/live/garyhtech.uk/privkey.pem;
      access_log      /usr/local/etc/nginx/logs/wiki.garyhtech.uk.log;
      error_log      /usr/local/etc/nginx/logs/wiki.garyhtech.uk-error.log;


        listen         80;
        root /usr/local/www/mediawiki;
        index index.php;
        add_header X-Content-Type-Options "nosniff";
        # allow larger file uploads and longer script runtimes
        client_max_body_size 100m;
        client_body_timeout 60;


        server_name    wiki.garyhtech.uk;
#Images
 
    location /images {
        return         301 <nowiki>https://$server_name$request_uri</nowiki>;
        # Separate location for images/ so .php execution won't apply
 
        add_header X-Content-Type-Options "nosniff";
        }
    }
 
    location /images/deleted {
server {
        # Deny access to deleted images folder
 
        deny all;
       listen 443 ssl;
    }
 
# MediaWiki assets (usually images)
       #listen [::]:80;
    location ~ ^/resources/(assets|lib|src) {
 
        try_files $uri 404;
       http2 on;
        add_header Cache-Control "public";
 
        expires 7d;
       server_name wiki.garyhtech.uk;
    }
 
# Assets, scripts and styles from skins and extensions
       ssl_certificate      /usr/local/etc/letsencrypt/live/garyhtech.uk/fullchain.pem;
    location ~ ^/(skins|extensions)/.+\.(css|js|gif|jpg|jpeg|png|svg|wasm)$ {
 
        try_files $uri 404;
       ssl_certificate_key  /usr/local/etc/letsencrypt/live/garyhtech.uk/privkey.pem;
        add_header Cache-Control "public";
 
        expires 7d;
       access_log      /usr/local/etc/nginx/logs/wiki.garyhtech.uk.log;
    }
 
# License and credits files
       error_log       /usr/local/etc/nginx/logs/wiki.garyhtech.uk-error.log;
    location ~ ^/(COPYING|CREDITS) {
 
        default_type text/plain;
        root /usr/local/www/mediawiki;
    }
 
        location ~ \.php$ {
        index index.php;
        try_files $uri =404;
 
        fastcgi_split_path_info ^(.+\.php)(/.+)$;
        add_header X-Content-Type-Options "nosniff";
        fastcgi_pass unix:/var/run/php81-fpm.sock;
 
        fastcgi_index index.php;
        # allow larger file uploads and longer script runtimes
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
 
        include fastcgi_params;
        client_max_body_size 100m;
        }
 
        location / {
        client_body_timeout 60;
        try_files $uri $uri/ /index.php?$args;
 
        rewrite ^/([^\?]*) /index.php?title=$1&$args last;
<nowiki/># Images
        }<br>}
 
    location /w/images {
 
        # Separate location for images/ so .php execution won't apply
 
        add_header X-Content-Type-Options "nosniff";
 
    }
 
    location /w/images/deleted {
 
        # Deny access to deleted images folder
 
        deny all;
 
    }
 
    # MediaWiki assets (usually images)
 
    location ~ ^/w/resources/(assets|lib|src) {
 
        try_files $uri 404;
 
        add_header Cache-Control "public";
 
        expires 7d;
 
    }
 
    # Assets, scripts and styles from skins and extensions
 
    location ~ ^/w/(skins|extensions)/.+\.(css|js|gif|jpg|jpeg|png|svg|wasm)$ {
 
        try_files $uri 404;
 
        add_header Cache-Control "public";
 
        expires 7d;
 
    }
 
    # License and credits files
 
    location ~ ^/w/(COPYING|CREDITS) {
 
        default_type text/plain;
 
    }
 
        location ~ \.php$ {
 
        try_files $uri =404;
 
        fastcgi_split_path_info ^(.+\.php)(/.+)$;
 
        fastcgi_pass unix:/var/run/php81-fpm.sock;
 
        fastcgi_index index.php;
 
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
 
        include fastcgi_params;
 
        }
 
        location / {
 
        try_files $uri $uri/ /index.php?$args;
 
        }
 
}
</code>

Latest revision as of 13:52, 15 December 2025

#Redirect for wiki.garyhtech.uk
       server {
       listen         80;
       server_name    wiki.garyhtech.uk;
       return         301 https://$server_name$request_uri;
       }
server {      
      listen 443 ssl;
      #listen [::]:80;
      http2 on;
      server_name wiki.garyhtech.uk;
      ssl_certificate      /usr/local/etc/letsencrypt/live/garyhtech.uk/fullchain.pem;
      ssl_certificate_key  /usr/local/etc/letsencrypt/live/garyhtech.uk/privkey.pem;
      access_log      /usr/local/etc/nginx/logs/wiki.garyhtech.uk.log;
      error_log       /usr/local/etc/nginx/logs/wiki.garyhtech.uk-error.log;
       root /usr/local/www/mediawiki;
       index index.php;
       add_header X-Content-Type-Options "nosniff";
       # allow larger file uploads and longer script runtimes
       client_max_body_size 100m;
       client_body_timeout 60;
#Images
   location /images {
       # Separate location for images/ so .php execution won't apply
       add_header X-Content-Type-Options "nosniff";
   }
   location /images/deleted {
       # Deny access to deleted images folder
       deny all;
   }
# MediaWiki assets (usually images)
   location ~ ^/resources/(assets|lib|src) {
       try_files $uri 404;
       add_header Cache-Control "public";
       expires 7d;
   }
# Assets, scripts and styles from skins and extensions
   location ~ ^/(skins|extensions)/.+\.(css|js|gif|jpg|jpeg|png|svg|wasm)$ {
       try_files $uri 404;
       add_header Cache-Control "public";
       expires 7d;
   }
# License and credits files
   location ~ ^/(COPYING|CREDITS) {
       default_type text/plain;
   }
       location ~ \.php$ {
       try_files $uri =404;
       fastcgi_split_path_info ^(.+\.php)(/.+)$;
       fastcgi_pass unix:/var/run/php81-fpm.sock;
       fastcgi_index index.php;
       fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
       include fastcgi_params;
       }
       location / {
       try_files $uri $uri/ /index.php?$args;
       rewrite ^/([^\?]*) /index.php?title=$1&$args last;
       }
}