]> jfr.im git - uguu.git/blobdiff - README.md
Update README.md
[uguu.git] / README.md
index 0fc3494f24d378f138d689bb8914f34a5988834c..d2f8fd488dc840e28fea21864a7a9fef223d524d 100644 (file)
--- a/README.md
+++ b/README.md
@@ -28,7 +28,7 @@ work with Apache 2.4 and newer PHP versions like PHP7.3.
 For the purposes of this guide, we won't cover setting up Nginx, PHP, SQLite,
 Node, or NPM. So we'll just assume you already have them all running well.
 
-NPM/Node is only needed to compile the files, Uguu runs on PHP.
+**NPM/Node is only needed to compile the files, Uguu runs on PHP.**
 
 ### Compiling
 
@@ -118,9 +118,68 @@ define('UGUU_DB_PASS', '[stuff]'); ---> define('UGUU_DB_PASS', null);
 
 *NOTE: The directory where the SQLite database is stored, must be writable by the web server user*
 
-## Nginx/Apache
+## Nginx example config
 
-I won't cover settings everything up, however do NOT allow PHP scripts to be executed on your subdomain serving the files or someone will just upload a PHP shell and PwN you.
+I won't cover settings everything up, here are some Nginx examples. Use [Letsencrypt](https://letsencrypt.org) to obain a SSL cert.
+
+Main domain:
+```
+server{
+    
+    listen             443 ssl;
+    server_name                www.yourdomain.com yourdomain.com;
+
+    ssl on;
+    ssl_certificate /path/to/fullchain.pem;
+    ssl_certificate_key /path/toprivkey.pem;
+    ssl_protocols TLSv1.2 TLSv1.3;   
+
+    root /path/to/uguu/dist/;
+    autoindex          off;
+    access_log      off;
+    index index.html index.php;  
+
+    location ~* \.(ico|css|js|ttf)$ {
+    expires 7d;
+    }
+
+    location ~* \.php$ {
+    fastcgi_pass unix:/var/run/php/php7.3-fpm.sock;
+    fastcgi_intercept_errors on;
+    fastcgi_index index.php;
+    fastcgi_split_path_info ^(.+\.php)(.*)$;
+    include fastcgi_params;
+    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
+    }
+}
+```
+
+Subdomain serving files (do not enable PHP here):
+```
+server{
+    listen          443 ssl;
+    server_name     www.subdomain.serveryourfiles.com subdomain.serveryourfiles.com;
+
+    ssl on;
+    ssl_certificate /path/to/fullchain.pem;
+    ssl_certificate_key /path/to/privkey.pem;
+    ssl_protocols TLSv1.2 TLSv1.3;
+        
+    root            /path/where/uploaded/files/are/stored/;
+    autoindex       off;
+    access_log     off;
+    index           index.html;
+}
+```
+
+To redirect HTTP to HTTPS make a config for each domain like so:
+```
+server {
+    listen 80;
+    server_name www.domain.com domain.com; 
+    return 301 https://domain.com$request_uri;
+}
+```
 
 ## API
 To upload using curl or make a tool you can post using: