Решено: редирект на https://

Обсуждение настройки и работы сервисов, резервирования, сетевых настроек и вопросов безопасности ОС.

Модераторы: SLEDopit, Модераторы разделов

god_of_vi
Сообщения: 28
ОС: Archlinux

Решено: редирект на https://

Сообщение god_of_vi »

Ребята, такая беда, У меня стоит Joomla на сайте testsite2.ua(виртуалка) Хочу, что бы меня редиректило с http://testsite2.ua на https://testsite2.ua... Добавил в конф nginx
if ( $scheme = "http" ) {
rewrite ^/(.*)$ https://$host/$1 permanent;
}

Для файла htaccess.exe в нутри сайта добавил
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule .* https://%{SERVER_NAME}%{REQUEST_URI}

в файле конфигурации apache прописать AllowOverride all

Все редиректит, ввожу testsite2.ru --> переводит на https://testsite2.ua но не отображает страничку FireFox выдает следующее

Unable to connect
Firefox can't establish a connection to the server at www.testsite2.ua.
The site could be temporarily unavailable or too busy. Try again in a few
moments.
If you are unable to load any pages, check your computer's network
connection.
If your computer or network is protected by a firewall or proxy, make sure
that Firefox is permitted to access the Web.

А когда ввожу www.testsite2.ua - все работает
Может проблема в конфе nginx?

вот Конфиг nginx

#user html;
worker_processes 1;

#error_log logs/error.log;
#error_log logs/error.log notice;
#error_log logs/error.log info;

#pid logs/nginx.pid;


events {
worker_connections 1024;
}


http {
include mime.types;
default_type application/octet-stream;
#log_format main '$remote_addr - $remote_user [$time_local] "$request" '
# '$status $body_bytes_sent "$http_referer" '
# '"$http_user_agent" "$http_x_forwarded_for"';

#access_log logs/access.log main;
proxy_cache_path /var/cache/nginx levels=1:2 keys_zone=all:32m;
sendfile on;
#tcp_nopush on;

#keepalive_timeout 0;
keepalive_timeout 65;

#gzip on;

server {
listen 80;
server_name localhost;

#charset koi8-r;
#access_log logs/host.access.log main;

location / {
root /usr/share/nginx/html;
index index.html index.htm;
}

#error_page 404 /404.html;

# redirect server error pages to the static page /50x.html
#
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/html;
}

server {
listen 80;
server_name www.testsite2.ua testsite2.ua;
if ( $scheme = "http" ) {
rewrite ^/(.*)$ https://$host/$1 permanent;
}

location / {
root /roman/testsite2.ua/www/joomla;
index index.html index.htm index.php;
}
location ~ \.php($|\/) {
proxy_pass http://127.0.0.1:8080;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
}
}
Спасибо сказали:
Аватара пользователя
serzh-z
Бывший модератор
Сообщения: 8259
Статус: Маньяк
ОС: Arch, Fedora, Ubuntu

Re: Решено: редирект на https://

Сообщение serzh-z »

god_of_vi
Судя по конфигу, запущено лишь два виртуальных сервера на порту 80, и оба без SSL.

1. Для сервера "www.testsite2.ua testsite2.ua;" на 80-ом нужно сделать нечто подобное "rewrite ^ https://$server_name$request_uri? permanent;"

2. Нужно описать SSL-сервер: "server { listen 443; www.testsite2.ua testsite2.ua; ssl on; ... }"

3. nginx не поддерживает апачевские .htaccess
Спасибо сказали:
Аватара пользователя
Bizdelnick
Модератор
Сообщения: 21497
Статус: nulla salus bello
ОС: Debian GNU/Linux

Re: Решено: редирект на https://

Сообщение Bizdelnick »

serzh-z писал(а):
31.07.2013 23:48
Нужно описать SSL-сервер: "server { listen 443; www.testsite2.ua testsite2.ua; ssl on; ... }"

И не забыть положить сертификат и приватный ключ.
Пишите правильно:
в консоли
вку́пе (с чем-либо)
в общем
вообще
в течение (часа)
новичок
нюанс
по умолчанию
приемлемо
проблема
пробовать
трафик
Спасибо сказали:
god_of_vi
Сообщения: 28
ОС: Archlinux

Re: Решено: редирект на https://

Сообщение god_of_vi »

serzh-z писал(а):
31.07.2013 23:48
god_of_vi
Судя по конфигу, запущено лишь два виртуальных сервера на порту 80, и оба без SSL.

1. Для сервера "www.testsite2.ua testsite2.ua;" на 80-ом нужно сделать нечто подобное "rewrite ^ https://$server_name$request_uri? permanent;"

2. Нужно описать SSL-сервер: "server { listen 443; www.testsite2.ua testsite2.ua; ssl on; ... }"

3. nginx не поддерживает апачевские .htaccess


А обязательно это все делать, все описывать и находить SSL-сертификат? а можно просто, как-то, что бы страничка была та же, только через https, короче говоря, отображала все содержимое http://www.testsite2.ua, через https://www.testsite2.ua
Спасибо сказали:
Аватара пользователя
serzh-z
Бывший модератор
Сообщения: 8259
Статус: Маньяк
ОС: Arch, Fedora, Ubuntu

Re: Решено: редирект на https://

Сообщение serzh-z »

god_of_vi
Можно попробовать добавить "listen 443;" в описание сервера "www.testsite2.ua testsite2.ua;" и добавить директиву rewrite.

Не уверен, что nginx позволяет одному серверу слушать несколько портов. Если нельзя, то можно просто скопипастить сервер и поменять ему listen на 443, а в оригинальном сервере добавить rewrite.
Спасибо сказали:
Аватара пользователя
Bizdelnick
Модератор
Сообщения: 21497
Статус: nulla salus bello
ОС: Debian GNU/Linux

Re: Решено: редирект на https://

Сообщение Bizdelnick »

god_of_vi писал(а):
01.08.2013 19:45
А обязательно это все делать, все описывать и находить SSL-сертификат? а можно просто, как-то, что бы страничка была та же, только через https

А как Вы себе представляете HTTPS без сертификата? И что значит - "находить"? Его сгенерировать надо и подписать.
Документация по настройке nginx: http://nginx.org/ru/docs/http/configuring_https_servers.html.
Как сделать сертификат - см. хотя бы википедия://самозаверенный сертификат, а если хотите, чтобы браузер не матюкался - то https://www.startssl.com Вам в помощь.

serzh-z писал(а):
01.08.2013 19:54
Не уверен, что nginx позволяет одному серверу слушать несколько портов

Позволяет, позволяет. Только писать надо немножко по-другому:

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

listen 80;
listen 443 ssl;
Или, в старых версиях,

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

listen 80;
listen 443 default ssl;
Пишите правильно:
в консоли
вку́пе (с чем-либо)
в общем
вообще
в течение (часа)
новичок
нюанс
по умолчанию
приемлемо
проблема
пробовать
трафик
Спасибо сказали:
god_of_vi
Сообщения: 28
ОС: Archlinux

Re: Решено: редирект на https://

Сообщение god_of_vi »

Серж и Бездельник большое спасибо, настроил, но так как сертификат самоподписанный, браузер ругается)
Спасибо сказали: