Редирект с 80 на 443 порт apache
Закрыть 80 порт и сделать редирект с 80 на 443
Товарищи подскажите, как закрыть 80 порт. И сделать редирект с 80 на 443 apache 2.0 на сервере.
Спасибо.
Мануал с вики апача мне не смог помочь..
Помощь в написании контрольных, курсовых и дипломных работ здесь.
443 порт socks
Курсач реализация клиента-сервера socks5 Клиент подключается к серверу и так происходит загрузка.
Vpn через 443 порт
Доброго времени суток. Купил себе одноплатный компьютер cubietruck для домашнего сервера + поднять.
Правильный редирект 443 порта в iptables
Как правильно реализовать перенаправление портов исходящего трафика в iptables? Из за блокировки.
Помощь в написании контрольных, курсовых и дипломных работ здесь.
Установка сертификата SSL порт 443
Всем привет! На одном сервере два сайта, один из них с установленным сертификатом ssl, пытаюсь.
Как залогиниваться через 443 порт?
При проверке сайта OWASP(ом) поставлена ошибка, что залогинивание идет через 80, а не через 443.
Как включить порт 443(https)
Доброе время суток! надеюсь, по адресу пишу! на работе в бухгалтерии и используется программный.
Работа через 443 порт (SSL)
собственно вопрос по поводу работы через 443 порт. у меня есть код, который отлично отрабатывает по.
Перенаправить HTTP на HTTPS в Apache
HTTP-сервер Apache — один из самых популярных веб-серверов в мире. Это кроссплатформенный HTTP-сервер с открытым исходным кодом, который обслуживает большую часть веб-сайтов в Интернете. Apache предоставляет множество мощных функций, которые можно расширить с помощью дополнительных модулей.
Если вы владелец веб-сайта или системный администратор, скорее всего, вы регулярно имеете дело с Apache. Одна из наиболее распространенных задач, которую вы, вероятно, будете выполнять, — это перенаправление HTTP-трафика на защищенную (HTTPS) версию вашего веб-сайта.
В отличие от HTTP, где запросы и ответы отправляются и возвращаются в виде открытого текста, HTTPS использует TLS / SSL для шифрования связи между клиентом и сервером.
Использование HTTPS над HTTP дает множество преимуществ, например:
В этом руководстве рассказывается, как перенаправить HTTP-трафик на HTTPS в Apache.
Перенаправить HTTP на HTTPS с помощью виртуального хоста
Виртуальные хосты Apache определяют настройки одного или нескольких доменов, размещенных на сервере. В директиве виртуального хоста вы можете указать корень документа сайта (каталог, содержащий файлы веб-сайта), создать отдельную политику безопасности для каждого сайта, использовать разные сертификаты SSL, настроить перенаправление и многое другое.
Обычно, когда сертификат SSL установлен в домене, у вас будет две директивы виртуального хоста для этого домена. Первый для HTTP-версии сайта на порту 80, а второй для версии HTTPS на порту 443.
Чтобы перенаправить веб-сайт на HTTPS, используйте директиву Redirect как показано в примере ниже:
Поясним код. Мы используем две директивы виртуального хоста: одну для HTTP и одну для HTTPS-версии сайта.
Директивы ServerName и ServerAlias определяют доменные имена виртуального хоста. Убедитесь, что вы заменили его на свое доменное имя.
Выделенная строка « Redirect permanent / https://example.com/ внутри виртуального HTTP-хоста» перенаправляет трафик на HTTPS-версию сайта.
Обычно вы также хотите перенаправить HTTPS-версию сайта с www на не-www или наоборот. Вот пример конфигурации:
Код внутри виртуального хоста HTTPS (выделенные строки) проверяет, содержит ли заголовок запроса домен www, и перенаправляет на версию без www.
Каждый раз, когда вы вносите изменения в файлы конфигурации, вам необходимо перезапустить или перезагрузить службу Apache, чтобы изменения вступили в силу:
.htaccess — это файл конфигурации для каждого каталога веб-сервера Apache. Этот файл можно использовать для определения того, как Apache обслуживает файлы из каталога, в котором они размещены, а также для включения / отключения дополнительных функций.
Этот метод требует, чтобы модуль mod_rewrite был загружен на сервер Apache. Этот модуль загружается по умолчанию на большинстве серверов. Если возможно, предпочитайте создание перенаправления на виртуальном хосте, потому что это проще и безопаснее.
Вот что означает код:
Выводы
В Apache предпочтительным способом перенаправления HTTP на HTTPS является настройка перенаправления 301 на виртуальном хосте домена.
Если у вас есть какие-либо вопросы или отзывы, не стесняйтесь оставлять комментарии.
Перенаправление HTTP на HTTPS в Apache
Главное меню » Linux » Перенаправление HTTP на HTTPS в Apache
Если вы являетесь владельцем сайта или системным администратором, скорее всего, вы имеете дело с Apache на регулярной основе. Одна из наиболее распространенных задач, которые вы, вероятно, будете выполнять, – это перенаправление трафика HTTP на защищенную (HTTPS) версию вашего сайта.
В отличие от HTTP, где запросы и ответы отправляются и возвращаются в виде открытого текста, HTTPS использует TLS/SSL для шифрования связи между клиентом и сервером.
Есть много преимуществ использования HTTPS над HTTP, таких как:
В этой статье рассказывается, как перенаправить HTTP-трафик на HTTPS в Apache.
Некоторые панели управления, такие как cPanel, позволяют принудительно перенаправлять HTTPS несколькими щелчками мыши.
Перенаправить HTTP на HTTPS с помощью виртуального хоста
Apache Virtual Hosts определяет настройки одного или нескольких доменов, размещенных на сервере. В директиве виртуального хоста вы можете указать корневой каталог документа сайта (каталог, содержащий файлы сайта), создать отдельную политику безопасности для каждого сайта, использовать разные сертификаты SSL, настроить перенаправление и многое другое.
Обычно, когда сертификат SSL установлен в домене, у вас будет две директивы виртуального хоста для этого домена. Первый – для HTTP-версии сайта на порту 80, а второй – для HTTPS-версии на порту 443.
В дистрибутивах Red-Hat, таких как CentOS и Fedora, файлы виртуальных хостов хранятся в /etc/httpd/conf.d. В Debian и его производных, таких как Ubuntu, файлы хранятся в каталоге /etc/apache2/sites-available.
Чтобы перенаправить веб-сайт на HTTPS, используйте директиву Redirect, как показано в примере ниже:
Давайте объясним код. Мы используем две директивы виртуального хоста, одну для HTTP и одну для HTTPS-версии сайта.
Директивы ServerName и ServerAlias с указанием доменных имен виртуального хоста. Убедитесь, что вы заменили его своим доменным именем.
Выделенная строка Redirect permanent / https://example.ru/ внутри виртуального хоста HTTP перенаправляет трафик на HTTPS-версию сайта.
Как правило, вы также хотите перенаправить HTTPS www-версию сайта на не-www или наоборот. Вот пример конфигурации:
Код внутри виртуального хоста HTTPS (выделенные строки) проверяет, содержит ли заголовок запроса домен www и перенаправляет его на версию без www.
Всякий раз, когда вы вносите изменения в файлы конфигурации, вам нужно перезапустить или перезагрузить службу Apache, чтобы изменения вступили в силу:
Вот что означает код:
В приведенном ниже примере есть дополнительное условие, которое проверяет, начинается ли запрос www. Используйте его, чтобы заставить всех посетителей использовать HTTPS-версию сайта без www:
Вывод
В Apache предпочтительным способом перенаправления HTTP на HTTPS является настройка перенаправления 301 на виртуальном хосте домена.
Если у вас есть какие-либо вопросы или отзывы, не стесняйтесь оставлять комментарии.
Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.
Настройка временного и постоянного редиректа в Apache
HTTP-перенаправление (или редирект) – это способ направить один домен или адрес на другой. Существует несколько видов перенаправления, каждый из которых по-разному воспринимается клиентским браузером. Самые распространённые виды – это временный и постоянный редирект.
Временный редирект используется в случае если контент, доступный по одному URL-адресу, нужно временно обслуживать из другого каталога. К примеру, если сайт находится на обслуживании, вы можете перенаправить запросы к домену на пользовательскую страницу ошибок, где посетители смогут узнать, когда сайт будет доступен.
Постоянный редирект сообщает браузеру о том, что старый адрес больше не доступен, а контент обслуживается по другой ссылке. Такой редирект полезен при смене доменного имени.
Чтобы создать временный редирект в Apache, добавьте в виртуальный хост такую строку:
Redirect /oldlocation http://www.newdomain.com/newlocation
Чтобы настроить постоянный редирект, добавьте в файл виртуального хоста:
Redirect permanent /oldlocation http://www.newdomain.com/newlocation
В руководстве вы найдёте более подробное описание настройки каждого вида перенаправления и несколько полезных примеров.
Требования
Простая настройка редиректа
Чтобы настроить простой редирект одной страницы в Apache, можно использовать директиву Redirect, которая входит в модуль mod_alias. Модуль включен в Apache по умолчанию. Директиве нужно иметь минимум два аргумента: старый URL-адрес и новый URL-адрес. С её помощью можно настроить как временное, так и постоянное перенаправление.
Чтобы настроить простое временное перенаправление, добавьте следующие строки в конфигурации сервера:
Теперь браузер будет направлять все запросы к www.domain1.com на домен www.domain2.com. Однако такое решение работает только с одностраничными сайтами.
Редирект объемных сайтов настраивается иначе. Для этого используется директива RedirectMatch, которая с помощью регулярных выражений может указывать целый каталог вместо одного файла.
К примеру, чтобы временно перенаправить все страницы домена www.domain1.com на www.domain2.com, нужно добавить в файл:
По умолчанию директивы Redirect и RedirectMatch устанавливают временный редирект. Чтобы с их помощью настроить постоянный редирект, нужно добавить в настройки опцию permanent:
Redirect permanent / http://www.domain2.com
RedirectMatch permanent ^/(.*)$ http://www.domain2.com/$1
Более гибкую настройку редиректа предоставляет модуль mod_rewrite, но его использование выходит за рамки данного руководства.
Пример 1: переход на другой домен
Предположим, у вас есть сайт, который пользуется популярностью, но в какой-то момент у вас возникла необходимость сменить его домен. Конечно, вы не можете просто переместить контент на новый домен, а старый забросить: так вы потеряете своих посетителей. Кроме того, ссылки на ваш сайт, расположенные на других сайтах, перестанут работать, если вы просто перенесёте контент на новый домен и не оставите никакой информации о его новом местонахождении. Все это приведёт к снижению трафика. Как переместить контент сайта на новый домен и не потерять аудиторию?
В таком случае нужно настроить редирект со старого домена (например, domain1.com) на новый (domain2.com). Чтобы навсегда сменить доменное имя сайта, используйте постоянный редирект. Благодаря этому браузер сможет перенаправлять поступающий трафик на новый домен.
Итак, предположим, что на данный момент сайт обслуживается по домену domain1.com, а его виртуальный хост находится в /etc/apache2/sites-available/domain1.com.conf:
Виртуальный хост для нового домена сайта, /etc/apache2/sites-available/domain2.com.conf, должен выглядеть так:
Теперь измените настройки виртуального хоста domain1.com и добавьте в них постоянный редирект на domain2.com:
В данном случае используется директива RedirectMatch, а не Redirect, поскольку сайт состоит из нескольких страниц. Регулярное выражение ^/(.*)$ совпадает с любым текстом, идущим в URL-адресе после /. Таким образом, http://domain1.com/index.html будет перенаправляться на http://domain2.com/index.html.
Чтобы настроить постоянный редирект, нужно просто добавить опцию permanent в директиву RedirectMatch.
Примечание: После изменения виртуального хоста нужно перезапустить Apache, чтобы обновить настройки:
systemctl restart apache2
Пример 2: перенаправление страницы
В некоторых ситуациях возникает необходимость изменить название уже опубликованной страницы. Если вы просто измените название (без настройки редиректа), при запросе исходного URL-адреса страницы будет возникать ошибка 404 Not Found. Тогда пользователь, который добавил эту страницу в закладки, не сможет найти её, поскольку он использует устаревшую ссылку. Редирект позволяет устранить эту проблему.
Предположим, на вашем сайте есть две отдельные страницы для товаров и услуг, products.html и services.html соответственно, и вы решили объединить эти страницы в одну, offers.html. Чтобы не потерять трафик, нужно настроить редирект products.html и services.html на offers.html.
К примеру, исходный виртуальный хост сайта выглядит так:
Чтобы перенаправить эти две страницы на новую страницу, достаточно добавить в файл две директивы Redirect:
Директива Redirect принимает исходный адрес страницы, которую нужно перенаправить, а затем адрес новой страницы. Опция permanent обеспечит постоянный редирект. Вы можете использовать неограниченное количество директив Redirect в виртуальном хосте, чтобы перенаправить трафик на новые страницы сайта.
Заключение
Теперь вы умеете перенаправлять запросы пользователей. При настройке перенаправления будьте внимательны: неправильное использование временных редиректов может повредить ваш поисковый рейтинг.
Редирект HTTP применяется также для обеспечения SSL-шифрования трафика (редирект http на https) и добавления префикса www к домену сайта.
Настройка Apache + SSL для работы сайта по HTTPS
Инструкция написана для операционных систем на базе UNIX.
Шаг 1. Создание сертификата
Для боевого сервера, сертификат должен быть получен от доверенного центра сертификации — либо локального для компании, либо коммерческого. Или получен бесплатно от Let’s Ecnrypt.
Для тестовой среды можно сгенерировать самоподписанный сертификат. Для этого сперва переходим в рабочую папку.
а) на Red Hat / CentOS:
б) на Debian / Ubuntu:
Создаем папку для сертификатов и переходим в нее:
И генерируем сертификат:
* в данном примере созданы открытый и закрытый ключи на 4 года (1461 день); значения параметра subj могут быть любыми в рамках тестирования.
Шаг 2. Установка модуля SSL для Apache
Прежде, чем устанавливать модуль, выполняем команду:
Если видим строчку, на подобие:
Спускаемся к шагу 3 данной инструкции.
Иначе, устанавливаем httpd ssl_module.
yum install mod_ssl
б) Для Ubuntu/Debian:
Открываем файл конфигурации apache:
* подразумевается, что используется apache 2.4.
Находим и снимаем комментарии со следующих строчек:
.
LoadModule ssl_module libexec/apache24/mod_ssl.so
.
Include etc/apache24/extra/httpd-ssl.conf
.
И ставим комментарии в следующих строках:
#
#SSLRandomSeed startup builtin
#SSLRandomSeed connect builtin
#
Чтобы настройки применились, необходимо перезапустить веб-сервер одной из команд:
systemctl restart httpd
systemctl restart apache2
service apache2 restart
* первая, как правило, используется в системах на базе RPM, вторая — DEB, третья — BSD.
Шаг 3. Настройка Apache
Выходим из папки ssl:
Открываем файл с настройкой виртуальный доменов.
* где site.conf — конфигурационный файл для конкретного сайта
В открытый файл добавляем следующее:
ServerName site.ru
DocumentRoot /var/www/apache/data
SSLEngine on
SSLCertificateFile ssl/cert.pem
SSLCertificateKeyFile ssl/cert.key
* где ServerName — домен сайта; DocumentRoot — расположение файлов сайта в системе; SSLCertificateFile и SSLCertificateKeyFile — пути до файлов ключей, которые были сгенерированы на шаге 1.
Проверяем корректность настроек в Apache:
Перечитываем конфигурацию apache:
Шаг 4. Проверка работоспособности
Открываем браузер и переходим на наш сайт, добавив https://. При использовании самоподписного сертификата (как в нашем случае), обозреватель выдаст предупреждение, что передача данных не безопасна. Подтверждаем наше намерение открыть сайт. Если все работает, переходим к шагу 5.
Если сайт не заработал, пробуем найти причину по log-файлу. Как правило, он находится в каталоге /var/log/apache или /var/log/httpd.
Шаг 5. Настройка редиректа
Чтобы все запросы по http автоматически перенаправлялись на https, необходимо настроить перенаправление (redirect). Есть несколько способов это сделать.
В конфигурационном файле
Открываем файл с настройкой виртуальных доменов (как в шаге 3) и дописываем следующее:
ServerName site.ru
RewriteEngine On
RewriteCond %
RewriteRule (.*) https://%
* в конкретном примере, мы перенаправили все запросы для сайта site.ru.
** обратите особое внимание, что если у Вас уже есть VirtualHost *:80 для настраиваемого сайта, необходимо его закомментировать или отредактировать.
Установка модуля rewrite
Чтобы перенаправление работало в Apache, необходимо установить модуль rewrite.
а) в CentOS открываем конфигурационный файл и проверяем наличие строки:
LoadModule rewrite_module modules/mod_rewrite.so
* если ее нет, добавляем; если она закомментирована, снимаем комментарий.
systemctl restart httpd
systemctl restart apache2
Apache + NGINX
При использовании веб-сервера на базе и Apache и NGINX, как правило, наружу смотрит последний. В таком случае, именно он будет отвечать на http-запросы, и в таком случае нужно настраивать SSL на NGINX.
Как настроить Apache для работы по HTTPS (SSL)