Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Компьютеры + Интернет » Вебмастеру » [решено] проксирование https с nginx на apache

Ответить
Настройки темы
[решено] проксирование https с nginx на apache
za1 za1 вне форума

Аватара для za1

Старожил


Сообщения: 225
Благодарности: 14

Профиль | Отправить PM | Цитировать


Доброго времени суток, помогите разобраться с конфигом для проксирования https с nginx на apache.
Общий вид схемы следующий: есть 1 виртуалка с Centos 7, на ней поднят апач, для отдачи тяжелого контента (php), и nginx, для отдачи статики и проксирования запросов на апач. В процессе проб и ошибок вышел на рабочую версию конфига, но при этом сейчас сайт отдается по https но с задержкой, в которой оказывается страница недоступности. Ниже конфиг для nginx и апача. Сразу уточню, опыта в создании таких систем у меня нет, и поднято это исключительно в целях тренировки.

/etc/nginx/conf.d/disk.conf

Код: Выделить весь код
server{
    listen 80;
    server_name disk;
   #  return 301 https://$host$request_uri;

    listen 443;

   # add_header Strict-Transport-Security max-age=2592000;

    ssl                     on;
    ssl_certificate         /var/www/html/disk/cert/sandisk.crt;
    ssl_certificate_key     /var/www/html/disk/cert/sandisk.key;

    location / {
          root /var/www/html/disk;
         # index nginx.html;
          autoindex on;
          proxy_pass http://127.0.0.1:81;
          proxy_set_header Host $http_host;
         # add_header  [always];
    }
    location ~ ^.*\.html$ {
    root /var/www/html/disk;
    }
}
/etc/httpd/sites-available/disk.conf

Код: Выделить весь код
<VirtualHost 127.0.0.1:81>
ServerName disk
DocumentRoot /var/www/html/disk
ErrorLog /var/www/html/disk/error.log
CustomLog /var/www/html/disk/requests.log combined
SetEnvIf X-Forwarded-Proto https HTTPS=on
#</VirtualHost>
#
#           <VirtualHost>
#                    ServerName disk
#                    ServerAlias disk
#                    ServerAlias mail.disk
#                    DocumentRoot /var/www/html/disk
#
                    SSLEngine On
                    SSLOptions +FakeBasicAuth +ExportCertData +StrictRequire
                    SSLCertificateFile /var/www/html/disk/cert/sandisk.crt
                    SSLCertificateKeyFile /var/www/html/disk/cert/sandisk.key

                   
                    <Directory “/var/www/html/disk”>
                            Options Indexes FollowSymLinks
                            AllowOverride All
                            Order allow,deny
                            Allow from all
                    </Directory>
#
#                    ErrorLog /var/www/html/disk/error.log
#                    CustomLog /var/www/html/disk/requests.log combined
            </VirtualHost>
ps Если раскомментировать строчку

# return 301 https://$host$request_uri;

сайт перестает работать, в чем причина не знаю. Все закомментированные строчки остались от проведенных экспериментов.
Хотелось узнать , что можно добавить или удалить в конфигах для правильной работы сайта?

Отправлено: 16:02, 17-11-2017

 

Забанен


Сообщения: 6345
Благодарности: 1436

Профиль | Цитировать


Не рекомендуется ssl on;
Нужно добавлять опцию ssl в listen.
Цитата za1:
ps Если раскомментировать строчку
# return 301 https://$host$request_uri;
сайт перестает работать, в чем причина не знаю. Все закомментированные строчки остались от проведенных экспериментов.
Хотелось узнать , что можно добавить или удалить в конфигах для правильной работы сайта? »
Это потому что строка эта делает редирект 301 (Moved Permanently) на https версию сайта, у вас получается закольцованный редирект.

Это по nginx.

В итоге конфиг будет выглядеть примено так:

Код: Выделить весь код
server {
    listen 80;
    server_name disk;
    return 301 https://$host$request_uri;
    }

server {
    listen 443 ssl;

    server_name disk;

    ssl_certificate         /var/www/html/disk/cert/sandisk.crt;
    ssl_certificate_key     /var/www/html/disk/cert/sandisk.key;

    location / {
          root /var/www/html/disk;
         # index nginx.html;
          autoindex on;
          proxy_pass http://127.0.0.1:81;
          proxy_set_header Host $http_host;
         # add_header  [always];
    }
    location ~ ^.*\.html$ {
    root /var/www/html/disk;
    }
}
На апаче выключите всё касающееся SSL/TLS - трафик к этому апстриму идёт нешифрованный.

Цитата za1:
при этом сейчас сайт отдается по https но с задержкой, в которой оказывается страница недоступности. »
error.log ваш друг. Почитаешь логи - локализуешь проблему. И решишь. И становится ненужно выставлять себя безграмотным дурачком на форумах, даже с оправданиями.
Это сообщение посчитали полезным следующие участники:

Отправлено: 19:27, 17-11-2017 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.

za1 za1 вне форума Автор темы

Аватара для za1

Старожил


Сообщения: 225
Благодарности: 14

Профиль | Отправить PM | Цитировать


Цитата:
сайт отдается по https но с задержкой, в которой оказывается страница недоступности.
Так для справки, дело оказалось в том, что хром запомнил эту страницу и сам ее запрашивал, а после очистки истории все стало нормальмо.

Отправлено: 11:09, 22-11-2017 | #3



Компьютерный форум OSzone.net » Компьютеры + Интернет » Вебмастеру » [решено] проксирование https с nginx на apache

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Debian/Ubuntu - Кто-нибудь знает, как настроить nginx и apache на локалке на свою папку?.. znak-ognya Общий по Linux 4 22-08-2016 15:38
Apache backend + SSL - Nginx frontend Lossless.Senator Программное обеспечение Linux и FreeBSD 3 03-03-2013 12:24
Статистика веб сервера "nginx+apache" sendem Вебмастеру 2 12-04-2012 22:30
FreeBSD + Squid 2.6 + прозрачное проксирование + HELP ME :) HM-1 Общий по FreeBSD 10 09-08-2006 12:39
Прозрачное проксирование Yustus Программное обеспечение Linux и FreeBSD 6 01-09-2004 18:32




 
Переход