1

ssl を使用しない場合、Apache conf には次のような vhost があります。

<VirtualHost 192.175.55.83:80>
ServerName nutra4you.com
ServerAlias www.nutra4you.com
DocumentRoot /home/media183/public_html
ServerAdmin webmaster@nutra4you.com
UseCanonicalName Off
CustomLog /usr/local/apache/domlogs/nutra4you.com combined
CustomLog /usr/local/apache/domlogs/nutra4you.com-bytes_log "%{%s}t %I .\n%{%s}t %O ."
## User nutra4yo # Needed for Cpanel::ApacheConf
UserDir enabled media183
<IfModule mod_suphp.c>
    suPHP_UserGroup media183 media183
</IfModule>
<IfModule !mod_disable_suexec.c>
    <IfModule !mod_ruid2.c>
        SuexecUserGroup media183 media183
    </IfModule>
</IfModule>
<IfModule mod_ruid2.c>
    RMode config
    RUidGid media183 media183
</IfModule>
ScriptAlias /cgi-bin/ /home/media183/public_html/cgi-bin/


# To customize this VirtualHost use an include file at the following location
# Include "/usr/local/apache/conf/userdata/std/2/nutra4yo/nutra4you.com/*.conf"

私は基本的にすべてをwww.nutra4you.commedia183 ユーザーから実行したいと考えています。また、ssl がなくても完全に機能します。

ただし、SSL を有効にすると、次のようになります。 https://www.nutra4you.com/checkout.php?b=12

内部サーバーエラーが発生し、スローされます:

 [Wed Jun 26 16:49:05 2013] [error] [client 98.175.107.93] File does not exist: /home/media183/public_html/500.shtml, referer: http://www.nutra4you.com/product.php?b=12
[Wed Jun 26 16:49:05 2013] [error] [client 98.175.107.93] SoftException in Application.cpp:422: Mismatch between target UID (685) and UID (672) of file "/home/media183/public_html/checkout.php", referer: http://www.nutra4you.com/product.php?b=12

これだけは許されませんか?

SSL 仮想ホスト:

<IfModule mod_ssl.c>
<VirtualHost 192.175.55.83:80>
    ServerName nutra4you.com
    ServerAlias www.nutra4you.com
    DocumentRoot /home/media183/public_html
    ServerAdmin webmaster@nutra4you.com
    UseCanonicalName Off
    CustomLog /usr/local/apache/domlogs/nutra4you.com combined
    CustomLog /usr/local/apache/domlogs/nutra4you.com-bytes_log "%{%s}t %I .\n%{%s}t %O ."
    ## User nutra4yo # Needed for Cpanel::ApacheConf
    UserDir enabled media183
    <IfModule mod_suphp.c>
        suPHP_UserGroup media183 media183
    </IfModule>
    <IfModule !mod_disable_suexec.c>
        <IfModule !mod_ruid2.c>
            SuexecUserGroup media183 media183
        </IfModule>
    </IfModule>
    <IfModule mod_ruid2.c>
        RMode config
        RUidGid media183 media183
    </IfModule>
    ScriptAlias /cgi-bin/ /home/media183/public_html/cgi-bin/


    # To customize this VirtualHost use an include file at the following location
    # Include "/usr/local/apache/conf/userdata/std/2/nutra4yo/nutra4you.com/*.conf"

</VirtualHost>
</IfModule>
4

1 に答える 1

2

SSL の vhost が正しくありません。SSL は HTTP とは異なるポートで実行する必要があります...通常は 443 です。したがって、この場合、80 に設定しているため、最初の非 SSL 仮想ホストと競合し、とにかく SSL 用に構成されていません。そのため、HTTPS 経由でサイトにアクセスすると、default-ssl仮想ホストを引き続き取得できます。

<IfModule mod_ssl.c>
# Needed to change the port below from 80 to 443
<VirtualHost 192.175.55.83:443>
    # the rest of your configuration
</VirtualHost>
</IfModule>

さらに、いくつかの SSL 固有のディレクティブがありません。仮想ホストで個別に定義されていない場合、すべての構成で定義されているサーバー全体のものは有効になると思いますが、再確認する必要があります: http://httpd.apache.org/docs/2.2/mod/mod_ssl.html

于 2013-06-27T16:28:49.590 に答える