Различия
Показаны различия между двумя версиями страницы.
| Следующая версия | Предыдущая версия | ||
| nginx:nginx [2015/09/14 22:06] – внешнее изменение 127.0.0.1 | nginx:nginx [2016/12/24 19:31] (текущий) – mirocow | ||
|---|---|---|---|
| Строка 1: | Строка 1: | ||
| - | {{tag> | + | {{tag> |
| - | ====== Nginx - Вопросы и Ответы | + | ====== Nginx установка ====== |
| - | * [[http:// | ||
| - | * [[http:// | ||
| - | * [[server: | ||
| - | |||
| - | ===== Вопросы-Ответы ===== | ||
| - | |||
| - | ==== Q: Нада перенаправить с site.com на www.site.com ==== | ||
| + | nano / | ||
| < | < | ||
| - | server { | + | deb http:// |
| - | listen 80; | + | deb-src |
| - | server_name site.com; | + | |
| - | | + | |
| - | } | + | |
| - | + | ||
| - | server { | + | |
| - | listen | + | |
| - | server_name | + | |
| - | } | + | |
| </ | </ | ||
| - | |||
| - | ==== Q: Надо перенаправить на другую папку ==== | ||
| - | |||
| - | * location /d { rewrite ^ other-folder permanent; } | ||
| - | |||
| - | ==== Q: Надо перенаправить GET на другой сервер ==== | ||
| - | |||
| - | * < | ||
| - | location /d { | ||
| - | rewrite ^ http:// | ||
| - | } | ||
| - | </ | ||
| - | |||
| - | ==== Q: Надо перенаправить GET|POST на другой сервер ==== | ||
| - | |||
| - | * В данном случае необходимо просто проксировать запрос | ||
| - | * < | ||
| - | location ~* /d { | ||
| - | proxy_pass http:// | ||
| - | proxy_redirect | ||
| - | resolver 8.8.8.8; | ||
| - | break; | ||
| - | } | ||
| - | </ | ||
| - | |||
| - | ==== *Q: Надо переправить в другой location, используя ошибку ==== | ||
| - | |||
| - | * < | ||
| - | location @nocached { | ||
| - | } | ||
| - | location / { | ||
| - | if ($cookie_dle_user_id) { return 412; } | ||
| - | } | ||
| - | error_page 412 = @nocached; | ||
| - | </ | ||
| - | |||
| - | ==== Q: Блокировка IP адресов и подсететей в Nginx ==== | ||
| - | |||
| - | * [[nginx: | ||
| - | | ||
| - | * **Q: Настройка proxy_pass на удаленный домен по DNS** | ||
| - | * < | ||
| - | location ^~ /freegeoip/ { | ||
| - | #use google as dns | ||
| - | resolver 8.8.8.8; | ||
| - | proxy_pass http:// | ||
| - | } | ||
| - | </ | ||
| - | |||
| - | ==== Q: Как запаролить location в Nginx ==== | ||
| - | |||
| - | |||
| - | * < | ||
| - | location ^~ /secure/ { | ||
| - | root / | ||
| - | auth_basic | ||
| - | auth_basic_user_file | ||
| - | } | ||
| - | </ | ||
| - | |||
| - | ==== Q: Как перенаправить обработку скрипта в другую папку ==== | ||
| < | < | ||
| - | server { | + | $ apt-key adv --keyserver keyserver.ubuntu.com --recv-keys ABF5BD827BD9BF62 |
| - | listen | + | $ apt-get update |
| - | server_name site.com; | + | $ apt-get install |
| - | location ^~ / | + | |
| - | + | ||
| - | index receive.php; | + | |
| - | + | ||
| - | alias / | + | |
| - | + | ||
| - | location ~ \.php$ { | + | |
| - | + | ||
| - | # Fix for server variables that behave differently under nginx/php-fpm than typically expected | + | |
| - | fastcgi_split_path_info ^(.+\.php)(/ | + | |
| - | + | ||
| - | # Include the standard fastcgi_params file included with nginx | + | |
| - | include fastcgi_params; | + | |
| - | + | ||
| - | | + | |
| - | | + | |
| - | + | ||
| - | # Override the SCRIPT_FILENAME variable set by fastcgi_params | + | |
| - | fastcgi_param | + | |
| - | + | ||
| - | # Pass to upstream PHP-FPM; This must match whatever you name your upstream connection | + | |
| - | fastcgi_pass phpfpm; | + | |
| - | + | ||
| - | # | + | |
| - | # | + | |
| - | + | ||
| - | } | + | |
| - | + | ||
| - | } | + | |
| - | } | + | |
| </ | </ | ||
| - | ==== Q: Количество открытых файлов и их лимиты ==== | ||
| - | |||
| - | <code bash> | ||
| - | for pid in `pidof nginx`; do echo " | ||
| - | </ | ||