Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Nginx Setup Info #179

Open
SkOODaT opened this issue Feb 7, 2017 · 3 comments
Open

Nginx Setup Info #179

SkOODaT opened this issue Feb 7, 2017 · 3 comments

Comments

@SkOODaT
Copy link

SkOODaT commented Feb 7, 2017

/etc/nginx/sites-available

nameofyoursite.conf

add in ....

# This will redrect any other domain/subdomain/ip address ...
#
server {
    return 301 http://SERVERNAME.com$request_uri;
}
# Main server
#
server {
    server_name SERVRNAME.com;
    
    index index.php;
    root /var/www/html/worldopole;

    location / {
        rewrite ^/pokemon/(\d+)/?$ /index.php?page=pokemon&id=$1;
        rewrite ^/pokemon/?$       /index.php?page=pokedex;
        rewrite ^/(pokestops|gym|devlog|faq|trainer|dashboard)/? /index.php?page=$1;
        
        try_files $uri $uri/ =404;
    }

    location ^~ /go {
        location ~* /go/static/(.+)$ { alias /root/PokemonGoMap/static/$1; }
        
        location = /go/search_control {
            expires 1y;
            add_header Cache-Control "public";
            add_header Content-Type application/json;
            return 200 '{"status":true}';
        }
           
        try_files $uri @pogom; 
    }

    location ~* \.(ico|jpg|jpeg|png|gif|js|css)$ {
        gzip on;
        expires 30d;
        add_header Cache-Control "public, max-age=2628000";
    }

    location ~* ^/core/(css|js)/(.+)\.(\d+)\.(css|js)$ {
        alias /var/www/html/worldopole/core/$1/$2.$4;
    }


    location ~* \.php$ {
        include snippets/fastcgi-php.conf;
       
        fastcgi_pass unix:/run/php/SERVERNAME.sock;
    }
}

Then make a symbolic link in your
/etc/nginx/sites-enabled

create a *.sock file in /run/php/SERVERNAME.sock

your going to half to customize everything tho, i had a buddy help me set it up.....

I can try to help if anyone has questions but i am completely new to ngrix, hopefully i included everything that makes it work

@SiteEffect
Copy link
Contributor

SiteEffect commented Feb 7, 2017

Thanks for your contribution. Peeps, how about adding this in the install.sh questionary if someone has nginx then set it up accordingly? We could also add the apache2 v-host file of the Wiki accordingly, if someone sets on apache2 instead nginx, what most people are doing.

@Obihoernchen
Copy link
Collaborator

Thank you very much will take a look at it soon!

@Obihoernchen Obihoernchen changed the title Ngrix Rule Setup Info ~ Not An Issue ~ Nginx Setup Info Apr 6, 2017
@pki0
Copy link
Collaborator

pki0 commented Apr 9, 2017

Many people asking in Discord for help with nginx and most of them I could help. So I'll Post my config here!
(This is for php7, should work on php5 too)

You need to edit:

**YOURDOMAIN** (twice)  
#Add domain here e.g. most-awesome-pokemon-website.com

**/path/to/your/fullchain.pem** 
#Path to letsencrypt fullchain.pem e.g. /etc/letsencrypt/live/YOURDOMAIN/fullchain.pem 

**/path/to/your/privkey.pem** 
#Path to letsencrypt privkey.pem e.g. /etc/letsencrypt/live/YOURDOMAIN/fullchain.pem 

**/path/to/Worldopole** 
#Path to Worldopole folder: e.g. /var/www/html/Worldopole

**http://YOUR.IP:5000/** 
#IP of your map and port (default 5000)

Config in /etc/nginx/sites-available/mydomain

(Open with: sudo nano /etc/nginx/sites-available/mydomain )

server {
 	listen 80 default_server;
 	listen [::]:80 default_server;
 	server_name **YOURDOMAIN**;
 	return 301 https://$host$request_uri;
 }

 
server {
 	listen 443 ssl;
 	listen [::]:443 ssl;
 
 	index index.php;
 
 	server_name **YOURDOMAIN**;
 
 	access_log  /var/log/nginx/www.access.log;
 	error_log   /var/log/nginx/www.error.log;
 	rewrite_log	on;
 	log_not_found off;
 
 	charset utf-8;
 
 	#specific pokemon vs all pokemon
 	rewrite ^/pokemon/(.+)$ /index.php?page=pokemon&id=$1 break;
 	rewrite ^/pokemon/?$    /index.php?page=pokedex       break;
 
 	#page rewrites
 	rewrite ^/(pokestops|gym|dashboard|devlog|faq|trainer|nests)$ /index.php?page=$1 break;
 
 	#static files
 	rewrite "^/core/(css|js)/(.+)\.(\d{10})\.(css|js)$" /core/$1/$2.$4 break;
 
 	client_header_buffer_size 4k;
 	client_max_body_size 2047M;
 	client_body_buffer_size 128k;
 	client_body_temp_path /tmp 1 2;
 
 	ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
 	ssl_prefer_server_ciphers on;
 
 	ssl_ciphers 'ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-DSS-AES128-GCM-SHA256:kEDH+AESGCM:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA:ECDHE-ECDSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-DSS-AES128-SHA256:DHE-RSA-AES256-SHA256:DHE-DSS-AES256-SHA:DHE-RSA-AES256-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:AES:CAMELLIA:DES-CBC3-SHA:!aNULL:!eNULL:!EXPORT:!DES:!RC4:!MD5:!PSK:!aECDH:!EDH-DSS-DES-CBC3-SHA:!EDH-RSA-DES-CBC3-SHA:!KRB5-DES-CBC3-SHA';
 
 	ssl_session_cache shared:ssl_session_cache:10m;
 
 	ssl_certificate     **/path/to/your/fullchain.pem**;
 	ssl_certificate_key **/path/to/your/privkey.pem**;
 
 	root **/path/to/Worldopole**; 
 
 	location /secret_nginx_status {
 		stub_status on;
 		access_log off;
 
 	}
 
 	##Parse all .php files
 	location ~ .php$ {
 		fastcgi_split_path_info ^(.+\.php)(.*)$;
 		fastcgi_pass   unix:/run/php/php7.0-fpm.sock;
 		fastcgi_index  index.php;
 		fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
 		include fastcgi_params;
 		fastcgi_param  QUERY_STRING     $query_string;
 		fastcgi_param  REQUEST_METHOD   $request_method;
 		fastcgi_param  CONTENT_TYPE     $content_type;
 		fastcgi_param  CONTENT_LENGTH   $content_length;
 		fastcgi_intercept_errors        off;
 		fastcgi_ignore_client_abort     off;
 		fastcgi_connect_timeout 60;
 		fastcgi_send_timeout 180;
 		fastcgi_read_timeout 180;
 		fastcgi_buffering on;
 		fastcgi_max_temp_file_size 0;
 	}
 
 	##Disable viewing .htaccess & .htpassword
 	location ~ /\.ht {
 		deny  all;
 		return 404;
 	}
 
 	location /map/ {
 		proxy_pass **http://YOUR.IP:5000/**;
 	}
 }

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants