Nginx + Apache

Проблемы с установкой, настройкой и работой системных и сетевых программ.

Модераторы: GRooVE, alexco

Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
tj.anton
сержант
Сообщения: 169
Зарегистрирован: 2010-03-10 16:58:23
Откуда: Челябинск
Контактная информация:

Nginx + Apache

Непрочитанное сообщение tj.anton » 2013-04-01 7:28:46

Всем привет! Вопрос такой, поставил Apache + Nginx.... Конфиги:

Код: Выделить всё

worker_processes  4;
user www www;
#keepalive_timeout 0;
#gzip_static off
#gzip_vary off

#error_log  /usr/log/nginx/nginx.error_log  debug;

events {
    worker_connections  1024;
#    use kqueue;
}

http {
    include       mime.types;
    default_type  application/octet-stream;

    log_format  main  '$remote_addr - $remote_user [$time_local] $status '
                      '"$request" $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "http_x_forwarded_for"';

    access_log  off;

    sendfile       on;
    tcp_nopush     on;
    tcp_nodelay    on;
#    directio      20m;
#    expires max;
#set $limit_rate 196K;
#    limit_rate_after 1m;
    client_header_timeout  30m;
    client_body_timeout    30m;
    client_max_body_size	1000m;
#    send_timeout           3m;
#   client_header_buffer_size    1k;
#    large_client_header_buffers  4 4k;
#    gzip on;
#    gzip_min_length  1100;
#    gzip_buffers     4 8k;
#    gzip_types       text/plain;
#  send_lowat       12000;
#    keepalive_timeout  75 20;

  server {
	listen       80;
	server_name XXX.ru www.XXX.ru;
	keepalive_timeout    70;

        # Main location
        location / {
            proxy_pass         http://127.0.0.1:8080/;
            proxy_redirect     off;

            proxy_set_header   Host             $host;
            proxy_set_header   X-Real-IP        $remote_addr;
            proxy_set_header   X-Forwarded-For  $proxy_add_x_forwarded_for;

            client_max_body_size       1000m;
            client_body_buffer_size    500m;

            proxy_connect_timeout      200;
            proxy_send_timeout         60;
            proxy_read_timeout         200;

            proxy_buffer_size          4k;
            proxy_buffers              4 32k;
            proxy_busy_buffers_size    64k;
            proxy_temp_file_write_size 64k;
        }

        location ~* \.(jpg|jpeg|gif|png)$ {
            root        /usr/local/www/apache22/data;
	     access_log 		off;
            expires      		30d;
        }
}

  server {
	listen       80;
	server_name forum.XXX.ru;
	keepalive_timeout    70;

        # Main location
        location / {
            proxy_pass         http://127.0.0.1:8080/;
            proxy_redirect     off;

            proxy_set_header   Host             $host;
            proxy_set_header   X-Real-IP        $remote_addr;
            proxy_set_header   X-Forwarded-For  $proxy_add_x_forwarded_for;

            client_max_body_size       20m;
            client_body_buffer_size    128k;

            proxy_connect_timeout      60;
            proxy_send_timeout         60;
            proxy_read_timeout         60;

            proxy_buffer_size          4k;
            proxy_buffers              4 32k;
            proxy_busy_buffers_size    64k;
            proxy_temp_file_write_size 64k;
        }

        location ~* \.(jpg|jpeg|gif|png)$ {
            root        /usr/local/www/apache22/data/_forum;
	     access_log 		off;
            expires      		30d;
        }
}

}

Код: Выделить всё

NameVirtualHost *:8080

<VirtualHost *:8080>
    DocumentRoot "/usr/local/www/apache22/data/"
    ServerName www.XXX.ru
    ServerAlias XXX.ru
</VirtualHost>

<VirtualHost *:8080>
    DocumentRoot "/usr/local/www/apache22/data/_forum/"
    ServerName forum.XXX.ru
</VirtualHost>

Listen 8080 - в httpd прописал... Все перезапустил, а на сайте по этим двум виртуальным хостам кидает в корень сайта в /usr/local/www/apache22/data.

Если набирает в браузере сайт:80 или сайт:8080 - ссылается в одно место. Нгикс работает... А вот почему не ходит по вирт хостам хз, что может быть? Натолкните пожалуйста

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

tj.anton
сержант
Сообщения: 169
Зарегистрирован: 2010-03-10 16:58:23
Откуда: Челябинск
Контактная информация:

Re: Nginx + Apache

Непрочитанное сообщение tj.anton » 2013-04-01 10:44:37

Что-то крутил крутил, теперь получилось так, что

при заходе на сайт кидает в директорию /usr/local/www/nginx при том по хостам тоже закидывает сюда просто в корень это на 80 порту

при заходе на сайт с портом 8080 кидает в директорию апач, и по хостам ходит отлично.

как бы теперь вылечить nginx чтобы он ссылался на 8080 ???

Аватара пользователя
redhat
рядовой
Сообщения: 41
Зарегистрирован: 2010-01-04 9:45:34
Откуда: Киев

Re: Nginx + Apache

Непрочитанное сообщение redhat » 2013-04-01 16:56:19

Так у Вас же для обоих location

Код: Выделить всё

proxy_pass         http://127.0.0.1:8080/;
Попробуйте по доменному имени

Код: Выделить всё

proxy_pass         http://XXX.ru:8080/;

Код: Выделить всё

proxy_pass         http://forum.XXX.ru:8080/;
Только в про записи в /etc/hosts не забудьте

tj.anton
сержант
Сообщения: 169
Зарегистрирован: 2010-03-10 16:58:23
Откуда: Челябинск
Контактная информация:

Re: Nginx + Apache

Непрочитанное сообщение tj.anton » 2013-04-01 18:01:02

redhat писал(а):Так у Вас же для обоих location

Код: Выделить всё

proxy_pass         http://127.0.0.1:8080/;
Попробуйте по доменному имени

Код: Выделить всё

proxy_pass         http://XXX.ru:8080/;

Код: Выделить всё

proxy_pass         http://forum.XXX.ru:8080/;
Только в про записи в /etc/hosts не забудьте
Не раньше работало, косяк был мой :) Я не открыл vhosts в apache... Он был закомментирован