2016-09-22 53 views
0

我需要在同一个域名下部署两个Django Cms项目。我需要在调用以下域时检索这两个网站。 http://rndbkw.tk http://rndbkw.tk/blog如何在同一域下部署多个django cms项目。我使用的是Apache 2.2和mod_wsgi

我有两个WSGI配置包含在httpd.conf

http://rndbkw.tk

ServerName rndbkw.tk 
WSGIDaemonProcess rnd python-path=/home/rndbkw/djangocms:/home/rndbkw/virtualenv2.7/lib/python2.7/site-packages/ 
WSGIProcessGroup rnd 
WSGIScriptAlias//home/rndbkw/djangocms/rnd/wsgi.py 

ServerName rndbkw.tk 
WSGIDaemonProcess blog python-path=/home/rndbkw/projects/djangocms:/home/rndbkw/projects/virtualenv2.7/lib/python2.7/site-packages/ 
WSGIProcessGroup blog 
WSGIScriptAlias//home/rndbkw/projects/djangocms/rnd/wsgi.py 

但我不能回来http://rndbkw.tk/blog

回答

2

你有几个问题,你的配置:

ServerName rndbkw.tk 
WSGIDaemonProcess rnd python-path=/home/rndbkw/djangocms:/home/rndbkw/virtualenv2.7/lib/python2.7/site-packages/ 
WSGIProcessGroup rnd 
WSGIScriptAlias//home/rndbkw/djangocms/rnd/wsgi.py 

ServerName rndbkw.tk 
WSGIDaemonProcess blog python-path=/home/rndbkw/projects/djangocms:/home/rndbkw/projects/virtualenv2.7/lib/python2.7/site-packages/ 
WSGIProcessGroup blog 
WSGIScriptAlias//home/rndbkw/projects/djangocms/rnd/wsgi.py 

而是使用:

ServerName rndbkw.tk 

WSGIDaemonProcess blog python-home=/home/rndbkw/projects/virtualenv2.7 python-path=/home/rndbkw/projects/djangocms 
WSGIScriptAlias /blog /home/rndbkw/projects/djangocms/rnd/wsgi.py process-group=blog application-group=%{GLOBAL} 

WSGIDaemonProcess rnd python-home=/home/rndbkw/virtualenv2.7 python-path=/home/rndbkw/djangocms 
WSGIScriptAlias//home/rndbkw/djangocms/rnd/wsgi.py process-group=rnd application-group=%{GLOBAL} 

所做的更改是:

  • /blog子URL山博客。
  • 移动WSGIScriptAlias/blog/,以便它优先,否则/将永远匹配第一,没有什么会永远通过博客网站。
  • 根据最佳实践,使用的WSGIDaemonProcess指令指定虚拟环境的位置,而不是使用python-path添加site-packages
  • 使用process-group选项指定WSGIScriptAlias来指示要使用哪个守护程序进程组。这使得它更精确。您使用WSGIProcessGroup不适用于LocationDirectory范围,因此两个WSGIProcessGroup指令中的任何一个都将覆盖第一个指令。
  • 设置application-group%{GLOBAL}强制使用每个守护进程的主解释器上下文。这解决了一些Python的第三方扩展模块的问题,这些模块在子解释器上下文中不起作用。
+0

非常感谢....其工作正常... – nidhin

+0

我使用了相同的配置,它将工作得很好。但是当我登录到rndbkw.tk/blog。签署后,它将重定向到rndbkw.tk。我不知道会发生什么事情。当我删除rndbkw.tk然后rndbkw.tk /博客出现在浏览器中没有style.What事情会出错?请帮助我.. – nidhin

+0

除非你应该你的实际mod_wsgi配置,因此它可以验证它是正确的,是不可能说的。同时显示您在Django设置中设置了登录URL设置。尽管这里不要这样做,去问一个描述你的问题的新问题。您不应该针对旧问题询问您的问题。 –

1

配置中的最后一行需要be

WSGIScriptAlias /blog /home/rndbkw/projects/djangocms/rnd/wsgi.py 
+0

是的,我这样做,但是当我打电话时http://rndbkw.tk/blog。 – nidhin

相关问题