Запуск сайта django и вики на одной машине Linux с apache - PullRequest
0 голосов
/ 14 декабря 2011

У меня есть небольшая проблема с тем, чтобы заставить сайт, основанный на django, и "обычные" сайты, т.е. вики, работать на той же машине, и, в довершение всего, я вроде как новичок в этом ...

Я пытался настроить это с помощью VirtualHost, но кажется, что это не очень хорошо работает.Другими словами, я могу одновременно запустить сайт django (в форме host.com / djangosite ) и другие сайты (например, host.com / othersite1 ).Только одна работает за раз, похоже, что apache запускает первый найденный VirtualHost.

структура на сервере выглядит следующим образом

/var/www/djangosite
/var/www/othersite1
/var/www/othersite2 ... etc

Теперь с включенными сайтами я немного поэкспериментировали, наконец, в итоге оказался в одном файле с двумя виртуальными хостами:

    <VirtualHost *:80>
        ServerAdmin ss@dd.gg
        DocumentRoot /var/www/djangosite
        ServerName host.com/djangosite

        Alias /m/ "/var/www/djangosite/forum/skins/"
        <Directory "/var/www/djangosite/forum/skins">
                Order allow,deny
                Allow from all
        </Directory>
        Alias /upfiles/ "/var/www/djangosite/forum/upfiles/"
        <Directory "/var/www/djangosite/forum/upfiles">
                Order deny,allow
                Allow from all
        </Directory>

        WSGIScriptAlias /djangosite /var/www/djangosite/djangosite.wsgi

        CustomLog /var/log/djangosite.access.log common
        ErrorLog /var/log/djangosite.error.log
</VirtualHost>

<VirtualHost *:80>
        DocumentRoot /var/www/othersite1
        ServerName host.com/othersite1
</VirtualHost>

Сами по себе оба виртуальных хоста работают нормально, т.е. когда я помещаю это в файл на сайтах с включенной поддержкой djangosite, второйне найден, (что-то с корневым каталогом документа в неправильной директории в структуре файловой системы).Если я поставлю второй Vhost сверху, он сработает, а djangosite - нет.

Хорошо.так что теперь реальный вопрос - есть ли рецепт для запуска djangosite и "обычного" сайта на одной конфигурации linux / apache с одним NIC и одним именем хоста.

спасибо, что хотя бы прочитали:)

1 Ответ

0 голосов
/ 14 декабря 2011

Вам не нужны два отдельных виртуальных хоста.Просто поместите их обоих в одно имя сервера с именем «host.com».Затем вы можете использовать псевдонимы - WSGIScriptAlias ​​для сайта Django и обычный псевдоним для вики.

Одно примечание: пожалуйста, не помещайте свой код Django в DocumentRoot.Это опасно - потенциально возможно, что люди увидят ваш код, включая ваши пароли и т. Д. В settings.py.Переместите его куда-нибудь еще и пропустите директиву DocumentRoot.

...