IMPORTANT: Backup your nginx site configs (usually under /etc/nginx/sites-available
)!
Remove old nginx incl. nginx-common:
apt-get autoremove --purge nginx nginx-common
Create /etc/apt/sources.list.d/nginx.list
with content:
deb http://nginx.org/packages/mainline/ubuntu/ trusty nginx
deb-src http://nginx.org/packages/mainline/ubuntu/ trusty nginx
Add nginx signing key:
wget -q -O- http://nginx.org/keys/nginx_signing.key | sudo apt-key add -
Update package cache:
sudo apt-get update
sudo apt-get install nginx
Fix /etc/nginx/nginx.conf
: and add this to the end of the http section:
- Set user to
www-data
- Set worker_processes to
4
- Set tcp_nopush to
on
- Set tcp_nodelay to
on
- Set types_hash_max_size to
2048
- Set server_tokens to
off
- Set gzip to
on
- Set gzip_disable to
"msie6"
- Add
include /etc/nginx/sites-enabled/*;
Remove /etc/nginx/conf.d/default.conf
sudo rm -rf /etc/nginx/conf.d/default.conf
Fix /etc/nginx/fastcgi_params
:
- Add
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
Add sites-*
folders:
sudo mkdir /etc/nginx/sites-available /etc/nginx/sites-enabled
Add your previously backuped site configs and enable them by symlinking in /etc/nginx/sites-enabled
.
Add to your https hosts congig:
listen 443 http2;
listen [::]:443 http2;
Restart nginx:
sudo service nginx restart
Done.