Nginx
Перейти к навигации
Перейти к поиску
Установка из PPA
apt-get install software-properties-common add-apt-repository ppa:ondrej/nginx apt-get update apt-get install nginx -y
Установка с официального сайта в Debian
http://nginx.org/keys/nginx_signing.key apt-key add nginx_signing.key mcedit /etc/apt/sources.list.d/nginx.list
deb http://nginx.org/packages/debian/ stretch nginx deb-src http://nginx.org/packages/debian/ stretch nginx
Устанавливаем лимит на размер загружаемых файлов. В файле /etc/nginx/nginx.conf
client_max_body_size 1024m;
Настраиваем автозапуск vhost-а
ln -s /etc/nginx/sites-available/ /etc/nginx/sites-enabled/
Применяем параметры
service nginx reload
В крайнем случае полностью рестартуем Nginx:
service nginx restart
Конвертация ключей из tomcat keystore в формат nginx
Convert our ".jks" file to ".p12" (PKCS12 key store format):
keytool -importkeystore -srckeystore oldkeystore.jks -destkeystore newkeystore.p12 -deststoretype PKCS12
List new keystore file contents:
keytool -deststoretype PKCS12 -keystore newkeystore.p12 -list
Extract pem (certificate) from ".p12" keysotre file
openssl pkcs12 -nokeys -in newkeystore.p12 -out certfile.pem
Extract unencrypted key file from ".p12" keysotre file:
openssl pkcs12 -nocerts -nodes -in newkeystore.p12 -out keyfile.key<
Иногда требуется удалить из файла certfile.pem самый первый сертификат (для которого CN не равен имени домена)
HTTP авторизация в Nginx
Авторизация средствами http протокола. Таким способом можно закрыть доступ к определенным разделам на сайте.
Nginx должен быть собран с модулем ngx_http_auth_basic_module.
Описание директив:
auth_basic – текстовое сообщение при авторизации auth_basic_user_file – полный путь к файлу с паролями
Пример конфига:
server { listen *:80; server_name my.server; root /var/www/my.server/htdocs/mysite location / { ... } location /admin { satisfy any; # разрешить доступ если авторизация прошла успешно auth_basic "admin site"; auth_basic_user_file /var/www/my.server/htdocs/mysite/.htpasswd; } location ~ /\.ht { # запрет на доступ к файлам .htpasswd и .htaccess deny all; } }
Создаем файл с пользователями:
htpasswd -c -d /var/www/my.server/htdocs/mysite/.htpasswd USERNAME
Для добавления последующих
htpasswd -d /var/www/my.server/htdocs/mysite/.htpasswd NEWUSERNAME
Перегенерация изображений
location / { set $true 1; try_files /maintenance.html $uri @fallback; if($true) { set $expr 123; } } location @fallback { proxy_pass 127.0.0.1:8080; }
https://habrahabr.ru/post/74135/