Вы регистрируете количество активных процессов? Если система не уничтожает пожирателей ресурсов памяти, более вероятно, что Вы видите fork-бомбу (или злонамеренная или программная ошибка).
Если Вы используете apache2
, затем необходимо сделать следующее:
Шаг 1: Используйте OpenSSL для создания ключей, которые используются для обеспечения сайта. Эти ключи используются при шифровании и дешифровании трафика на безопасный сайт.
$ openssl genrsa -out mydomain.key 1024
Эта команда создаст закрытый ключ на 1 024 бита и помещает его в файл mydomain.key.
Шаг 2: Генерируйте свой собственный сертификат.
$ openssl req -new -key mydomain.key -x509 -out mydomain.crt
Шаг 3: Сохраните закрытый ключ в каталоге /etc/apache2/ssl.key/
и сертификат в каталоге /etc/apache2/ssl.crt/
.
Примечание: ssl.key
каталог должен быть только читаемым корнем.
Шаг 4: Теперь необходимо отредактировать httpd.conf
файл в /etc/apache2
.
Теперь этот файл должен включать содержание как это:
NameVirtualHost *:80
NameVirtualHost *:443
Listen 443
<VirtualHost *:80>
ServerAdmin webmaster@mydomain.com
DocumentRoot /srv/www/htdocs/mydomain
ServerName www.mydomain.com
ServerAlias mydomain.com
</VirtualHost>
<VirtualHost *:443>
ServerAdmin webmaster@mydomain.com
DocumentRoot /srv/www/htdocs/mydomain-secure
ServerName mail.mydomain.com
SSLEngine on
SSLCertificateFile /etc/apache2/ssl.crt/mydomain.crt
SSLCertificateKeyFile /etc/apache2/ssl.key/mydomain.key
</VirtualHost>
<Directory /srv/www/htdocs/mydomain-secure>
SSLRequireSSL
</Directory>
<VirtualHost *:80>
ServerAdmin webmaster@mydomain.com
DocumentRoot /srv/www/htdocs/mydomain
ServerName mail.mydomain.com
RedirectMatch permanent (/.*) https://mail.mydomain.com$1
</VirtualHost>
Не изменяться Listen 80
кому: 443
в /etc/httpd/conf/httpd.conf
. SSL настроен в /etc/httpd/conf.d/ssl.conf
. На RHEL 6 SSL включен и слушающий по умолчанию с сам подписанный сертификат.
Можно добраться до сайта по умолчанию с помощью SSL только путем просмотра к https://localhost
(Вы не должны добавлять порт в конец URL).
Если Вы хотите передать все Запросы HTTP HTTPS (который является тем, что я полагаю, что Вы пытаетесь достигнуть), можно или добавить постоянное перенаправление или использовать модуль Apache mod_rewrite
.
Самый легкий и самый безопасный путь состоит в том, чтобы настроить постоянное перенаправление. Включите названные виртуальные хосты и добавьте a Redirect
директива к VirtualHost в /etc/httpd/conf/httpd.conf
.
NameVirtualHost *:80
<VirtualHost *:80>
ServerName localhost
Redirect permanent / https://localhost
</VirtualHost>
Используя mod_rewrite
, Вы также создаете именованный виртуальный хост. Это не рекомендуемый метод, но будет работать.
NameVirtualHost *:80
<VirtualHost *:80>
# Enable the Rewrite engine
RewriteEngine On
# Make sure the connection is not already HTTPS
RewriteCond %{HTTPS} !=on
# This rewrites the URL and forwards to https
RewriteRule ^/?(.*) https://%{SERVER_NAME}/$1 [R,L]
</VirtualHost>
Если Вы хотите выключить SSL, прокомментируйте эти строки в /etc/httpd/conf.d/ssl.conf
и Apache перезапуска.
LoadModule ssl_module modules/mod_ssl.so
Listen 443
<VirtualHost _default_:443>
, со всеми необходимыми параметрами, каждым с комментариями. mod_ssl
пакет автоматически не установлен, если Вы установили httpd
пакет.
– jsbillings
06.08.2012, 20:15
[R=301,L]
вместо просто [R,L]
, этим путем переписывание использует постоянную опцию HTTP 3xx коды состояния.
– dcestari
14.05.2015, 03:06
NameVirtualHost
удерживается от использования и будет удален в будущих версиях Apache. Его в настоящее время уже нет. 2.Listen 443
может вызвать проблемы, если апач уже настроен для слушания на порте 443, который на многих дистрибутивах Linux уже имеет место. Только добавьте, уверены ли Вы, что эта строка еще не настроена где. – lanoxx 31.08.2017, 11:46