Я пытаюсь настроить сервер apache, используя mod_wsgi для динамического массового хостинга. У каждого пользователя будет свой собственный экземпляр приложения python, расположенный в / mnt / data / www / domains / [имя_пользователя], и будет файл vhost.map, сообщающий мне, какой домен соответствует каталогу каждого пользователя (каталог будет иметь то же имя как пользователь). Чего я не знаю, так это как написать строку WSGIScriptAliasMatch, чтобы он также брал путь из файла vhost.map.
Я хочу сделать что-то вроде этого: я могу иметь на своем сервере разные домены, такие как www.virgilbalibanu.com или virgil.balibanu.com и flaviu.balibanu.com, где каждый домен будет вести к другому пользователю, имя пользователя не имеет Необходимое подключение к доменному имени. Я хочу сделать это из-за пользователя, когда он делает учетную запись получает что-то вроде virgil.mydomain.com, но если у него есть свой собственный домен, он может изменить его позже на это, например, www.virgilbalibanu.ro, и таким образом я бы нужно только изменить строку в файле vhost.map
Пока что у меня есть что-то вроде этого:
Alias /media/ /mnt/data/www/iitcms/media/
#all media is taken from here
RewriteEngine on
RewriteMap lowercase int:tolower
# define the map file
RewriteMap vhost txt:/mnt/data/www/domains/vhost.map
#this does not work either, can;t say why atm
RewriteCond %{REQUEST_URI} ^/uploads/
RewriteCond ${lowercase:%{SERVER_NAME}} ^(.+)$
RewriteCond ${vhost:%1} ^(/.*)$
RewriteRule ^/(.*)$ %1/media/uploads/$1
#---> this I have no ideea how i could do
WSGIScriptAliasMatch ^([^/]+) /mnt/data/www/domains/$1/apache/django.wsgi
<Directory "/mnt/data/www/domains">
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
Allow from all
</Directory>
<DirectoryMatch ^/mnt/data/www/domains/([^/]+)/apache>
AllowOverride None
Options FollowSymLinks ExecCGI
Order deny,allow
Allow from all
</DirectoryMatch>
<Directory /mnt/data/www/iitcms/media>
AllowOverride None
Options Indexes FollowSymLinks MultiViews
Order allow,deny
Allow from all
</Directory>
<DirectoryMatch ^/mnt/data/www/domains/([^/]+)/media/uploads>
AllowOverride None
Options Indexes FollowSymLinks MultiViews
Order allow,deny
Allow from all
</DirectoryMatch>
Я знаю, что часть, которую я сделал с mod_rewrite, не работает, не могу точно сказать, почему нет, но это пока не так важно, мне интересно, как я могу написать строку WSGIScriptAliasMatch, чтобы выполнить мою задачу.
Я был бы очень признателен за любую помощь или любые другие идеи, связанные с тем, как я могу справиться с этим. Также было бы здорово, если бы мне удалось заставить каждый сайт работать в режиме демона wsgi, но это не так важно.
Спасибо,
Вергилий