У меня было следующее сообщение об ошибке при установке apache2
localhost
service apache2 reload
/usr/sbin/apache2ctl: 87: ulimit: error setting limit (Operation not permitted)
Syntax error on line 52 of /etc/apache2/sites-enabled/default-ssl:
SSLCertificateKeyFile: file '/etc/ssl/private/ssl-cert-snakeoil.key' does not exist or is empty
Action 'configtest' failed.
The Apache error log may have more information.
...fail!
Как решить эту проблему?
На ваш вопрос есть два ответа.
Первый - это короткий ответ, который напрямую устраняет ошибку в вашем журнале:
file '/etc/ssl/private/ssl-cert-snakeoil.key' does not exist or is empty
Apache останавливается из-за отсутствия SSL-сертификата. Просто удалите конфигурацию SSL по умолчанию из папки sites-enabled
, используя sudo rm /etc/apache2/sites-enabled/default-ssl
, и Apache не должен запуститься. Чтобы снова включить сайт ssl после того, как вы настроили конфигурацию, вы можете запустить sudo ln -s /etc/apache2/sites-available/default-ssl etc/apache2/sites-enabled/default-ssl
.
Второй ответ - правильный, который должен внимательно изучить документацию Apache, чтобы определить, почему ваша конфигурация неверна. Поскольку значения в вашем журнале ошибок выглядят как значения по умолчанию из новой установки Apache, я включил первый ответ, но после того, как вы это сделаете, вам следует посвятить некоторое время чтению документации. Вы многому научитесь и узнаете, почему не было файла snakeoil.pem
и что означает сертификат snakeoil.
Вы можете найти общую документацию здесь: http://httpd.apache.org/docs/2.2/
(или http: //httpd.apache. org / docs / 2.4 / в зависимости)
Вы можете найти общую документацию конфигурации здесь: http://httpd.apache.org/docs/2.2/mod/quickreference.html
Документацию mod_ssl
можно найти здесь: http://httpd.apache.org/docs/2.2/ssl/
Похоже, вы забыли sudo:
sudo service apache2 reload
Вам необходимо создать сертификат SSL для вашего сервера и связать SSLCertificateFile
(.crt-файл) и SSLCertificateKeyFile
(.key-файл) со своим сертификатом и ключом сертификата.
Это делается в файле конфигурации, который Apache читает при запуске. Обычно он находится в /usr/local/apache2/conf/extra/httpd-ssl.conf
. В вашем случае он находится в /etc/ssl/private/sites-enabled/default-ssl
. Чтобы создать самозаверяющий сертификат, следуйте этим инструкциям
. Если вы купили сертификат, просто найдите его и скопируйте путь.