Различия
Показаны различия между двумя версиями страницы.
Следующая версия | Предыдущая версия | ||
nginx:faq [2016/12/24 19:32] – создано mirocow | nginx:faq [2025/03/10 23:59] (текущий) – [Q: Как запаролить location в Nginx] mirocow | ||
---|---|---|---|
Строка 1: | Строка 1: | ||
- | {{tag> | + | {{tag> |
====== Nginx - Вопросы и Ответы ====== | ====== Nginx - Вопросы и Ответы ====== | ||
Строка 9: | Строка 9: | ||
===== Вопросы-Ответы ===== | ===== Вопросы-Ответы ===== | ||
- | ==== Q: Нада перенаправить с site.com на www.site.com ==== | + | ==== Q: Надо перенаправить с site.com на www.site.com ==== |
- | < | + | < |
server { | server { | ||
listen 80; | listen 80; | ||
Строка 39: | Строка 39: | ||
* В данном случае необходимо просто проксировать запрос | * В данном случае необходимо просто проксировать запрос | ||
- | * < | + | * < |
location ~* /d { | location ~* /d { | ||
proxy_pass http:// | proxy_pass http:// | ||
Строка 50: | Строка 50: | ||
==== *Q: Надо переправить в другой location, используя ошибку ==== | ==== *Q: Надо переправить в другой location, используя ошибку ==== | ||
- | * < | + | * < |
location @nocached { | location @nocached { | ||
} | } | ||
Строка 64: | Строка 64: | ||
| | ||
* **Q: Настройка proxy_pass на удаленный домен по DNS** | * **Q: Настройка proxy_pass на удаленный домен по DNS** | ||
- | * < | + | * < |
location ^~ /freegeoip/ { | location ^~ /freegeoip/ { | ||
#use google as dns | #use google as dns | ||
Строка 75: | Строка 75: | ||
- | * < | + | * < |
location ^~ /secure/ { | location ^~ /secure/ { | ||
root / | root / | ||
Строка 81: | Строка 81: | ||
auth_basic_user_file | auth_basic_user_file | ||
} | } | ||
- | </ | + | </ |
==== Q: Как перенаправить обработку скрипта в другую папку ==== | ==== Q: Как перенаправить обработку скрипта в другую папку ==== | ||
- | < | + | < |
server { | server { | ||
listen | listen | ||
Строка 100: | Строка 100: | ||
fastcgi_split_path_info ^(.+\.php)(/ | fastcgi_split_path_info ^(.+\.php)(/ | ||
- | # Include the standard fastcgi_params file included with nginx | + | # Include the standard fastcgi_params file included with nginx |
include fastcgi_params; | include fastcgi_params; | ||
Строка 112: | Строка 112: | ||
fastcgi_pass phpfpm; | fastcgi_pass phpfpm; | ||
- | # | + | # |
- | #try_files $uri =404; | + | #try_files $uri =404; |
} | } | ||
Строка 121: | Строка 121: | ||
</ | </ | ||
+ | ==== Q: Как добавить / в конец ==== | ||
+ | |||
+ | |||
+ | <code nginx> | ||
+ | rewrite ^([^.\? | ||
+ | </ | ||
+ | |||
+ | ==== Q: Редирект на страницу ==== | ||
+ | |||
+ | <code nginx> | ||
+ | server { | ||
+ | location = / | ||
+ | return 301 http:// | ||
+ | } | ||
+ | } | ||
+ | </ | ||
+ | |||
+ | ==== Q: Распределение ресурсов между источниками CORS ==== | ||
+ | |||
+ | <code nginx> | ||
+ | location ~* .(eot|ttf|woff) { | ||
+ | add_header Access-Control-Allow-Origin *; | ||
+ | } | ||
+ | </ | ||
+ | |||
+ | ==== Q: Как завернуть location на yii appliaction ==== | ||
+ | |||
+ | <code nginx> | ||
+ | root / | ||
+ | |||
+ | location /admin/ { | ||
+ | |||
+ | alias / | ||
+ | |||
+ | # serve static files direct + allow friendly urls | ||
+ | # Note: The seemingly weird syntax is due to a long-standing bug in nginx: https:// | ||
+ | try_files $uri $uri/ / | ||
+ | |||
+ | location ~ / | ||
+ | include fastcgi_params; | ||
+ | fastcgi_pass | ||
+ | fastcgi_index | ||
+ | fastcgi_param | ||
+ | include | ||
+ | fastcgi_read_timeout 300; | ||
+ | proxy_redirect | ||
+ | } | ||
+ | |||
+ | } # / location | ||
+ | |||
+ | location @admin { | ||
+ | | ||
+ | } | ||
+ | |||
+ | </ | ||
+ | |||
+ | ==== Q: Редирект на определенный путь в URI ==== | ||
+ | |||
+ | <code nginx> | ||
+ | location /old-site { | ||
+ | rewrite ^/ | ||
+ | } | ||
+ | </ | ||
==== Q: Количество открытых файлов и их лимиты ==== | ==== Q: Количество открытых файлов и их лимиты ==== | ||
Строка 126: | Строка 189: | ||
for pid in `pidof nginx`; do echo " | for pid in `pidof nginx`; do echo " | ||
</ | </ | ||
+ | |||