Nginx-ru mailing list archive (nginx-ru@sysoev.ru)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: два правила работают по отделности но не вместе
По части неправильности я понимаю, трудно перейти с apache на nginx старые
замашки тянут за собой.
Однако server у меня один поскольку
веб панель прикрученая с серверу не позволяет работать с apache+nginx
А следовательно все сайты ходят через default конфиг ;(
server {
listen 80 default;
server_name _;
server_name_in_redirect off;
resolver 127.0.0.1;
access_log /var/log/ispconfig/httpd/$host/access.log;
location ~*
^.+\.(jpg|jpeg|gif|png|ico|css|zip|tgz|gz|rar|bz2|doc|xls|exe|pdf|ppt|txt|tar|mid|midi|wav|bmp|rtf|js|swf|flv|mp3)$
{
# пусть до файлов по умолчанию
root /var/www/$host/web;
# если в $host содержится ввв то он его удаляет в противном случае пусть
будет /var/www/www.site.ru
#-----------------------------------
if ($host ~* ^(www\.)(.+)) {
set $HBW $2;
root /var/www/$HBW/web;
}
#-----------------------------------
access_log off;
expires 30d;
}
#------------------------------------
location ~* ^.+\.(htm|html)$ {
# данная директива при отсутствие файла
try_files $uri /index.php;
# пусть до файлов по умолчанию
root /var/www/$host/web;
# если в $host содержится ввв то он его удаляет в противном случае пусть
будет /var/www/www.site.ru
if ($host ~* ^(www\.)(.+)) {
set $HBW $2;
root /var/www/$HBW/web;
}
###################################################
access_log off;
expires 30d;
}
##------------------------------------
location / {
#if (!-e $request_filename){
# rewrite ^/(.+) /index.php/$1 break;
# }
###################################################
# пусть до файлов по умолчанию
root /var/www/$host/web;
# если в $host содержится ввв то он его удаляет
if ($host ~* ^(www\.)(.+)) {
set $HBW $2;
root /var/www/$HBW/web;
}
###################################################
index index.html index.htm index.php;
access_log off;
proxy_pass http://$host:82;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
####################################################
# Настройки для phpmyadmin
location /phpmyadmin {
root /usr/share/;
index index.php index.html index.htm;
location ~ ^/phpmyadmin/(.+\.php)$ {
try_files $uri =404;
root /usr/share/;
proxy_pass http://$host:82;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
location ~* ^/phpmyadmin/(.+\.(jpg|jpeg|gif|css|png|js|ico|html|xml|txt))$
{
root /usr/share/;
}
}
location /phpMyAdmin {
rewrite ^/* /phpmyadmin last;
}
#Конец phpmyadmin
#####################################################
# Настройки для WEBMAIL
location /webmail {
root /var/www/;
index index.php index.html index.htm;
location ~ ^/webmail/(.+\.php)$ {
try_files $uri =404;
root /war/www/webmail;
proxy_pass http://127.0.0.1:82;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Host 127.0.0.1:82/webmail;
proxy_set_header X-Forwarded-For
$proxy_add_x_forwarded_for;
}
location ~* ^/webmail/(.+\.(jpg|jpeg|gif|css|png|js|ico|html|xml|txt))$ {
root /var/www/webmail/webmail;
}
}
location /WebMail {
rewrite ^/* $host:82/webmail last;
}
#Конец webmail
#####################################################
#---------------AWSTATS
location ^~ /awstats-icon {
alias /usr/share/awstats/icon/;
access_log off;
}
location ^~ /awstatscss {
alias /usr/share/doc/awstats/examples/css/;
access_log off;
}
location ^~ /awstatsclasses {
alias /usr/share/doc/awstats/examples/classes/;
access_log off;
}
#---------------AVSTATS-END
} # Закрывает server !!!
Так что правило должно работать так же для обсалютно всех доменов ;(
Posted at Nginx Forum:
http://forum.nginx.org/read.php?21,234927,234931#msg-234931
_______________________________________________
nginx-ru mailing list
nginx-ru@xxxxxxxxx
http://mailman.nginx.org/mailman/listinfo/nginx-ru
|