Хостинг приложений PHP/JS и Django с помощью Apache под Windows

У меня есть WAMP Server 3.2 (Apache 2.4.46), установленный на Windows 10 (64-бит), он выведен в локальную сеть компании. Я использую его для размещения обычных php/js приложений. Мой httpd-vhosts.conf имеет следующий вид:

<VirtualHost *:80>
    ServerName RealNameOfTheServer
    DocumentRoot "d:/projects"
    <Directory  "d:/projects/">
        Options +Indexes +Includes +FollowSymLinks +MultiViews
        AllowOverride All
        Require all granted
    </Directory>
</VirtualHost>

Сейчас у меня есть приложение Django, которое желательно разместить на том же сервере (поскольку у меня нет другого) вместе с другими php-приложениями. Я пытался следовать example для настройки виртуальных хостов, но он использует процесс daemon, который недоступен на Windows.

Мой httpd-vhosts.conf после внесенных изменений заставляет приложение Django работать правильно, но сбрасывает приложения php/js.

<VirtualHost *:80>
    ServerName RealNameOfTheServer
    DocumentRoot "d:/projects"
    <Directory  "d:/projects/">
        Options +Indexes +Includes +FollowSymLinks +MultiViews
        AllowOverride All
        Require all granted
    </Directory>

    WSGIPassAuthorization On
    ErrorLog "logs/dashboard.error.log"
    CustomLog "logs/dashboard.access.log" combined
    WSGIScriptAlias /  "d:\projects\dashboard\dashboard\wsgi_windows.py"
    WSGIApplicationGroup %{GLOBAL}
    <Directory "d:\projects\dashboard\dashboard">
        <Files wsgi_windows.py>
            Options +Indexes +Includes +FollowSymLinks +MultiViews
            AllowOverride All
            Require all granted
        </Files>
    </Directory>

    Alias /static "d:/projects/dashboard/static"
    <Directory "d:/projects/dashboard/static">
        Require all granted
    </Directory>  
</VirtualHost>

Есть ли способ запускать приложения php и Django на Windows?

WSGIScriptAlias /  "d:\projects\dashboard\dashboard\wsgi_windows.py"

также будет перехватывать вызовы к "d:/projects" - поэтому, если вы хотите избежать этого, вам нужно изменить на что-то вроде

WSGIScriptAlias /my_wsgi_app/  "d:\projects\dashboard\dashboard\wsgi_windows.py"

Если вы хотите избежать того, чтобы пользователь мог видеть это, вы можете использовать правило перезаписи для определенных путей.

Вернуться на верх