web-dev-qa-db-ja.com

Ubuntu 14.04でApacheを使用してSSLをセットアップしようとしています

Namecheap.comからSSL証明書を購入しました。 Ubuntu 14.04とApacheを実行しているサーバーにインストールしようとしています。次のチュートリアルを使用してApacheをセットアップしました https://www.digitalocean.com/community/tutorials/how-to-set-up-Apache-virtual-hosts-on-ubuntu-14-04-lts 。サーバーには、HTTPのみで実行されている既存のサイトがあります。

このサイトは2つのサブドメインadmin.example.comとapi.example.comを使用しているため、ワイルドカード証明書を購入しました。

認証局に従って証明書をインストールし、Apacheの設定example.com.confを変更してSSL仮想ホストを追加しましたが、非HTTPSページが機能するようにしたいので、既存のポート80の設定をそのままにして、新しい以下の仮想ホストのホスト構成。

Apacheを再起動して、https経由でページを表示しようとしましたが、Firefoxから次のエラーコードを取得しました(Error code: ssl_error_rx_record_too_long)

私はこの投稿で言及されている修正を試みましたが、成功しませんでした https://www.digicert.com/ssl-support/Apache-fix-common-ssl-errors.htm#SSLRecordLength

ファイアウォールでポート443が開いていることも確認しました。

Apache設定

<VirtualHost *:80>
    ServerAdmin [email protected]
    ServerName example.com
    ServerAlias www.example.com api.example.com admin.example.com

    DocumentRoot /var/www/example.com/public/

    <Directory "/var/www/example.com/public/">
            Options Indexes FollowSymLinks
            AllowOverride None
            Order deny,allow
            Allow from all
            Satisfy all

            IndexIgnore */*
            RewriteEngine on
            # if a directory or a file exists, use it directly
            RewriteCond %{REQUEST_FILENAME} !-f
            RewriteCond %{REQUEST_FILENAME} !-d

            # otherwise forward it to index.php
            RewriteRule . index.php
    </Directory>

    # Possible values include: debug, info, notice, warn, error, crit,
    # alert, emerg.
    LogLevel warn

    #ErrorLog "/var/www/example.com/protected/runtime/Apache-error.log"
    #CustomLog "/var/www/example.com/protected/runtime/access.log" common

</VirtualHost>

<VirtualHost *:433>

#SSL certificate
        SSLEngine On
        SSLCertificateFile /etc/Apache2/ssl/STAR.example.com.crt
        SSLCertificateKeyFile /etc/Apache2/ssl/*.example.com.key
        SSLCACertificateFile /etc/Apache2/ssl/STAR.example.com.ca-bundle.crt

    ServerAdmin [email protected]
    ServerName example.com
    ServerAlias www.example.com api.example.com admin.example.com

    DocumentRoot /var/www/example.com/public/

    <Directory "/var/www/example.com/public/">
            Options Indexes FollowSymLinks
            AllowOverride None
            Order deny,allow
            Allow from all
            Satisfy all

            IndexIgnore */*
            RewriteEngine on
            # if a directory or a file exists, use it directly
            RewriteCond %{REQUEST_FILENAME} !-f
            RewriteCond %{REQUEST_FILENAME} !-d

            # otherwise forward it to index.php
            RewriteRule . index.php
    </Directory>

    # Possible values include: debug, info, notice, warn, error, crit,
    # alert, emerg.
    LogLevel warn

    ErrorLog "/var/www/example.com/protected/runtime/Apache-error.log"
    CustomLog "/var/www/example.com/protected/runtime/access.log" combined

</VirtualHost>

Apacheの詳細

$ Apache2 -v
Server version: Apache/2.4.7 (Ubuntu)
Server built:   Jul 22 2014 14:36:38
5
Levi Putna

さてここにあなたの問題があります:

<VirtualHost *:433>

それを443に変更します。

6
Teun Vink