Difference between revisions of "Nginx"
Jump to navigation
Jump to search
(→Full remove) |
|||
(4 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
== install == | == install == | ||
− | * In case for any error, stop apache first: sudo service apache2 stop | + | Remove apache2 |
+ | * In case for any error, stop apache first: | ||
+ | sudo service apache2 stop | ||
+ | sudo apt-get purge apache2 apache2-utils apache2.2-bin apache2-common | ||
+ | sudo apt-get autoremove | ||
+ | |||
* apt-get install nginx | * apt-get install nginx | ||
* allow gfw -> sudo ufw allow 'Nginx HTTP' | * allow gfw -> sudo ufw allow 'Nginx HTTP' | ||
Line 16: | Line 21: | ||
* sudo apt-get purge nginx nginx-common # Removes everything. | * sudo apt-get purge nginx nginx-common # Removes everything. | ||
* sudo apt-get autoremove | * sudo apt-get autoremove | ||
+ | === Upgrade === | ||
+ | # Add the sources | ||
+ | <source lang="c"> | ||
+ | sudo echo " | ||
+ | deb http://packages.dotdeb.org jessie all | ||
+ | deb http://nginx.org/packages/mainline/debian/ jessie nginx" | sudo tee -a /etc/apt/sources.list | ||
+ | # Add the keys to our system so we trust packages from the sources we added | ||
+ | cd /tmp | ||
+ | wget http://www.dotdeb.org/dotdeb.gpg | ||
+ | sudo apt-key add dotdeb.gpg | ||
+ | |||
+ | wget http://nginx.org/keys/nginx_signing.key | ||
+ | sudo apt-key add nginx_signing.key | ||
+ | |||
+ | # finally install nginx | ||
+ | sudo apt update && sudo apt install nginx-full -y | ||
+ | </source> | ||
== Config == | == Config == | ||
− | === | + | === Config sites file === |
+ | backup site files in sites-available, activatived sites in sites-enabled, creat soft link from sites-available to sites-enabled. | ||
* default config file: nano /etc/nginx/sites-available/default | * default config file: nano /etc/nginx/sites-available/default | ||
+ | * create soft link to sites-enabled by ls -n /etc/nginx/sites-available/example.com /etc/nginx/sites-enabled/example.com | ||
+ | |||
* link enable config file: /etc/nginx/sites-enabled/default | * link enable config file: /etc/nginx/sites-enabled/default | ||
* delete etc/nginx/sites-avaialble/default | * delete etc/nginx/sites-avaialble/default | ||
Line 26: | Line 51: | ||
* set server_name www.example.com example.com; | * set server_name www.example.com example.com; | ||
− | === | + | === Futher Config === |
{| class="wikitable sortable" | {| class="wikitable sortable" | ||
|- | |- | ||
Line 87: | Line 112: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
== Log == | == Log == | ||
* /var/log/nginx | * /var/log/nginx | ||
Line 308: | Line 117: | ||
upstream prematurely closed connection while reading response header from upstream | upstream prematurely closed connection while reading response header from upstream | ||
* Reference - https://stackoverflow.com/questions/27396248/uwsgi-nginx-flask-upstream-prematurely-closed | * Reference - https://stackoverflow.com/questions/27396248/uwsgi-nginx-flask-upstream-prematurely-closed | ||
− | [[category: | + | [[category: web]] |
Latest revision as of 00:56, 2 December 2019
Contents
install
Remove apache2
- In case for any error, stop apache first:
sudo service apache2 stop sudo apt-get purge apache2 apache2-utils apache2.2-bin apache2-common sudo apt-get autoremove
Restart
- service nginx start
- check start status -> systemctl status nginx.service
- systemctl restart nginx
- Default root folder /var/www/html
Full remove
- sudo apt-get remove nginx nginx-common # Removes all but config files.
- sudo apt-get purge nginx nginx-common # Removes everything.
- sudo apt-get autoremove
Upgrade
- Add the sources
sudo echo "
deb http://packages.dotdeb.org jessie all
deb http://nginx.org/packages/mainline/debian/ jessie nginx" | sudo tee -a /etc/apt/sources.list
# Add the keys to our system so we trust packages from the sources we added
cd /tmp
wget http://www.dotdeb.org/dotdeb.gpg
sudo apt-key add dotdeb.gpg
wget http://nginx.org/keys/nginx_signing.key
sudo apt-key add nginx_signing.key
# finally install nginx
sudo apt update && sudo apt install nginx-full -y
Config
Config sites file
backup site files in sites-available, activatived sites in sites-enabled, creat soft link from sites-available to sites-enabled.
- default config file: nano /etc/nginx/sites-available/default
- create soft link to sites-enabled by ls -n /etc/nginx/sites-available/example.com /etc/nginx/sites-enabled/example.com
- link enable config file: /etc/nginx/sites-enabled/default
- delete etc/nginx/sites-avaialble/default
- edit /etc/nginx/sites-enabled/default
- set server_name www.example.com example.com;
Futher Config
Steps | Header text | Header text |
---|---|---|
Nginx config | /etc/nginx/nginx.conf | |
Default site config | /var/www/html -> defined at /etc/nginx/sites-enabled/default | - |
- create file e.g. /etc/ningx/sites-enabled/iot.electrodragon.com.conf
- Optimize -> delete other conf file? FastCGI cache?, gzip missing?
Optimized
- sudo nano /etc/nginx/nginx.conf
- nginx -> enable gzip on, set staic file caching?, buffers, timetout
NGINX Config
server {
listen 80;
listen [::]:80;
root /usr/share/nginx/www; # root of user file
index index.html index.htm; # file name
server_name localhost; # e.g. www.electrodragon.com
location / {
try_files $uri $uri/ /index.html;
}
location /doc/ {
alias /usr/share/doc/;
autoindex on;
allow 127.0.0.1;
deny all;
}
}
Setup for uwsgi
server {
listen 80;
server_name www.portf.ltd portf.ltd;
# root /var/www/html;
# index index.html;
location / {
# try_files $uri $uri/ =404;
include uwsgi_params;
uwsgi_pass unix:/var/www/html/flask-test/sock.sock;
}
}
Log
- /var/log/nginx
Error Fix
upstream prematurely closed connection while reading response header from upstream