Apache は常に http を https にリダイレクトします

Apache は常に http を https にリダイレクトします

私はUbuntu 12.04でApache 2.4.7を実行しています。サイトを持っていますhttp://bharatkrishna.net/これは私の自宅のマシンで実行されています。ルーターのポート 80 と 443 を転送しました。

ご覧の通り、訪問するとhttp://bharatkrishna.net/自動的にリダイレクトされますhttps://bharatkrishna.net/

サイト全体をhttpsにリダイレクトさせたくありません。特定のサブURLのみにリダイレクトするつもりでした。つまり、http://bharatkrishna.net/ログインは https に、残りは http にする必要があります。どうすればいいですか?

これは、オンラインのチュートリアルを読んで Apache で SSL を設定する方法です。

• /etc/apache2/sites-enabled/でSSLEngineをオンにし、証明書の場所を設定します

<IfModule mod_ssl.c>
        <VirtualHost _default_:443>
                ServerAdmin webmaster@localhost                                                                                                                                                                                               
                DocumentRoot /var/www/html/

                #LogLevel info ssl:warn                                                                                                                                                                                                       

                ErrorLog ${APACHE_LOG_DIR}/error.log
                CustomLog ${APACHE_LOG_DIR}/access.log combined                                                                                                                                                                               

                #   SSL Engine Switch:                                                                                                                                                                                                        
                #   Enable/Disable SSL for this virtual host.                                                                                                                                                                                 
                SSLEngine on

                SSLCertificateFile      /etc/apache2/ssl/www_bharatkrishna_net.crt
                SSLCertificateKeyFile   /etc/apache2/ssl/bharatkrishna.net.key

                SSLCACertificatePath /etc/ssl/certs/
                SSLCACertificateFile /etc/apache2/ssl/bundle.crt

....
....

        </VirtualHost>
</IfModule>

• 次のコマンドを実行します。

sudo a2enmod ssl
sudo a2ensite default-ssl

000-default.confsites-enabled の下にコピーしましたdefault.conf。ファイルの内容は次のとおりです。

<VirtualHost *:80>

        ServerAdmin webmaster@localhost
        DocumentRoot /var/www/html

        ErrorLog ${APACHE_LOG_DIR}/error.log
        CustomLog ${APACHE_LOG_DIR}/access.log combined 
</VirtualHost>

答え1

Apache 用に投稿された設定では、 から へのリダイレクトは行われませんhttp。この場合、httpsへの切り替えはhttpsブラウザによって行われます。

この動作の詳細については、以下を参照してください。

関連情報