Различия
Показаны различия между двумя версиями страницы.
Предыдущая версия справа и слева Предыдущая версия | |||
nginx:nginx [2016/12/24 19:30] – mirocow | nginx:nginx [2016/12/24 19:31] (текущий) – mirocow | ||
---|---|---|---|
Строка 16: | Строка 16: | ||
</ | </ | ||
- | ====== Nginx - Вопросы и Ответы ====== | ||
- | |||
- | * [[http:// | ||
- | * [[http:// | ||
- | |||
- | |||
- | ===== Вопросы-Ответы ===== | ||
- | |||
- | ==== Q: Нада перенаправить с site.com на www.site.com ==== | ||
- | |||
- | < | ||
- | server { | ||
- | listen 80; | ||
- | server_name site.com; | ||
- | return | ||
- | } | ||
- | |||
- | 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 { | ||
- | listen | ||
- | server_name site.com; | ||
- | location ^~ / | ||
- | |||
- | index receive.php; | ||
- | |||
- | alias / | ||
- | |||
- | location ~ \.php$ { | ||
- | |||
- | # Fix for server variables that behave differently under nginx/ | ||
- | fastcgi_split_path_info ^(.+\.php)(/ | ||
- | |||
- | # Include the standard fastcgi_params file included with nginx | ||
- | include fastcgi_params; | ||
- | |||
- | fastcgi_param | ||
- | fastcgi_index receive.php; | ||
- | |||
- | # 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 " | ||
- | </ | ||