1

したがって、ここで何が起こっているのかについての基本的な理解が少し欠けているかもしれませんが、これを機能させることはできません。2つのdjangoWebサイトがあり、両方を同じボックスで、両方ともポート80でホストできるようにしたいのですが、これを正しく機能させるための魔法はありますか?私のsites-available/defaultファイルは次のようになります。

<VirtualHost *:80>
    WSGIScriptAlias / /path/to/proj/apache/django.wsgi
    AliasMatch ^/([^/]*\.css) /path/to/proj/static/
    Alias /media /path/to/proj/static/
    Alias /static/ /path/to/proj/static/

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

<VirtualHost *:80>
    WSGIScriptAlias / /path/to/otherproj/apache/django.wsgi

    ErrorLog ${APACHE_LOG_DIR}/error2.log
    LogLevel warn
    CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

サイトへの移動が最初のサイトにヒットし、2番目のサイトに移動することはないため、明らかにこれは機能しません。だから私の質問は、ポート80で2つのWebサイトをホストできるようにこれをどのように設定するかです。おそらくlocalhost/site1とlocalhost/site2のようにして、そのように理解することができますが、何をしようとしてもできます。それを機能させるようです。

ServerNameプロパティで遊んだことがありますが、それがどのように機能するかはよくわかりません。そのマシンのIPを押すと、最初のWebサイトしか表示されないように設定しても、どこで使用するかわかりません。 ServerNameはすべてに影響します。

何か提案があれば、または私がより多くの情報を与える必要があるかどうか私に知らせてください。

また、2番目のポートをポート8080に変更すると、両方とも機能することに注意してください。ただし、変更すると、myip:8080の上にドメイン名を配置できないようです。

4

1 に答える 1

1

ここで説明することは何もないと思います。実際に各仮想ドメインの名前を指定する必要があります。

注:NameVirtualHostは非推奨です

<VirtualHost *:80>
    ServerName site1.ltd
    WSGIScriptAlias / /path/to/proj/apache/django.wsgi
    AliasMatch ^/([^/]*\.css) /path/to/proj/static/
    Alias /media /path/to/proj/static/
    Alias /static/ /path/to/proj/static/

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

<VirtualHost *:80>
    ServerName site2.ltd
    WSGIScriptAlias / /path/to/otherproj/apache/django.wsgi

    ErrorLog ${APACHE_LOG_DIR}/error2.log
    LogLevel warn
    CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
于 2013-03-03T23:21:56.750 に答える