Назад | Перейти на главную страницу

Пробуя Apache 2 с SSL, я получаю сообщение «Неверная команда '----- BEGIN' на моем .CRT

Я прошел через этот урок http://www.vanemery.com/Linux/Apache/apache-SSL.html настройка моего SSL на Apache2. Но когда я пытаюсь запустить свой сервер, я получаю эту ошибку:

Синтаксическая ошибка в строке 1 /etc/apache2/conf.d/ssl.crt/foo-server.crt: недопустимая команда '----- BEGIN', возможно, неправильно написана или определена модулем, не включенным в конфигурацию сервера

Что, похоже, мне не хватает в моей настройке Apache? Как я могу проверить?

Помощь приветствуется!

= - = - = - = - = - = - = - = - = - = - = - = - = - = - =

ниже мой файл vhost:

<IfModule mod_ssl.c>

  <VirtualHost *:443>
    ServerName  foo.ca
    ServerAlias www.foo.ca

    RailsEnv development

    DocumentRoot /home/dan/rails/foo/public

    SSLEngine On
    SSLCipherSuite HIGH:MEDIUM
    SSLProtocol all -SSLv2
    SSLCertificateFile /etc/apache2/conf.d/ssl.crt/foo-server.crt
    SSLCertificateKeyFile /etc/apache2/conf.d/ssl.key/foo-server.key
    SSLCertificateChainFile /etc/apache2/conf.d/ssl.crt/foo-ca.crt
    SSLCertificateFile /etc/apache2/conf.d/ssl.crt/foo-ca.crt

    <Directory "/home/dan/rails/foo/public">
      Order allow,deny
      Allow from all
    </Directory>

  </VirtualHost>

</IfModule>

Проверьте свою директиву include. Похоже, httpd пытается запустить файл сертификата, как если бы это был файл конфигурации. Таким образом, "--- начать ключ RSA" в начале файла сертификата обрабатывается как (недопустимая) команда. Держу пари, что в вашем основном файле httpd.conf ваше включение выглядит примерно так: Include conf.d/ssl.crt/* когда должно быть больше так: Include conf.d/ssl.crt/*.conf или Include conf.d/*.conf

Include используется для получения всех дополнительных файлов конфигурации для других модулей httpd. Один из них - ssl.conf. Однако вы не хотите, чтобы эти ключи обрабатывались как файлы конфигурации, иначе вы получите ошибку, которую видите.