web-dev-qa-db-ja.com

サイトはHTTPSではなくHTTPで正常に動作します

サイトが有効になっているサイトには次のものがあります。
000-default.conf
default-ssl.conf

000-default.confには次のものがあります。

<VirtualHost *:80>
    ServerName www.optonet.inter.edu
    ServerAdmin [email protected]
    DocumentRoot /var/www/html/joomla

    <Directory /var/www/html/joomla>
        Options FollowSymLinks MultiViews 
        Options -Indexes
        AllowOverride All
        Require all granted
    </Directory>
</VirtualHost>

default-ssl.confには次のものがあります。

<IfModule mod_ssl.c>
    <VirtualHost _default_:443>
        ServerName www.optonet.inter.edu
        ServerAdmin [email protected]
        DocumentRoot /var/www/html/joomla

        SSLEngine on
        <FilesMatch "\.(cgi|shtml|phtml|php)$">
            SSLOptions +StdEnvVars
        </FilesMatch>
        <Directory /usr/lib/cgi-bin>
            Options -Indexes
            SSLOptions +StdEnvVars
        </Directory>
        Include /etc/letsencrypt/options-ssl-Apache.conf
        SSLCertificateFile    **********************
        SSLCertificateKeyFile **********************
    </VirtualHost>
    SSLStaplingCache shmcb:/tmp/stapling_cache(128000)
</IfModule>

http://www.optonet.inter.ed および任意のサブページに移動すると、問題なく開きます。 https://www.optonet.inter.ed を試すと開きますが、サブページを試すと404 not foundエラーが表示されます。

サイトは、letsencryptを使用してmod_rewriteとSSLを使用します。

.htaccessには多数のリダイレクトがありますが、http/httpsを参照するものはありません

私が間違っているのは何ですか?

1
ShotgunPR

あなたが持っている問題は、SSL仮想ホスト内でAllowOverride Allを有効にしていないため、URL書き換えルールと条件が含まれていると思われる.htaccessを使用できるためです。

このコードをSSL仮想ホストに追加:

# START NEW CODE
<Directory /var/www/html/joomla>
    Options FollowSymLinks MultiViews 
    Options -Indexes
    AllowOverride All
    Require all granted
</Directory>
# END NEW CODE

終了コードは次のようになります:

<IfModule mod_ssl.c>
    <VirtualHost _default_:443>
        ServerName www.optonet.inter.edu
        ServerAdmin [email protected]
        DocumentRoot /var/www/html/joomla

        SSLEngine on
        <FilesMatch "\.(cgi|shtml|phtml|php)$">
            SSLOptions +StdEnvVars
        </FilesMatch>

        # START NEW CODE
        <Directory /var/www/html/joomla>
            Options FollowSymLinks MultiViews 
            Options -Indexes
            AllowOverride All
            Require all granted
        </Directory>
        # END NEW CODE

        <Directory /usr/lib/cgi-bin>
            Options -Indexes
            SSLOptions +StdEnvVars
        </Directory>
        Include /etc/letsencrypt/options-ssl-Apache.conf
        SSLCertificateFile    **********************
        SSLCertificateKeyFile **********************
    </VirtualHost>
    SSLStaplingCache shmcb:/tmp/stapling_cache(128000)
</IfModule>
3
Simon Hayter