我正在尝试在同一域下的子目录中本地设置两个Django应用程序,例如:
http://127.0.0.1/en/
http://127.0.0.1/jp/
以下是/etc/apache2/apache2.conf
WSGIDaemonProcess khdx_wsgi user=galdosd group=galdosd maximum-requests=10000
WSGIScriptAlias /khdx /home/galdosd/khdxweb/rel/khdx/apache/django.wsgi
<Location /khdx>
WSGIProcessGroup khdx_wsgi
</Location>
WSGIDaemonProcess sauron_wsgi user=galdosd group=galdosd maximum-requests=10000
WSGIScriptAlias /sauron /home/galdosd/finalsauronweb/django-root/apache/django.wsgi
<Location /sauron>
WSGIProcessGroup sauron_wsgi
</Location>
我面临的问题是所有网址都相对于127.0.0.1
工作,例如127.0.0.1/accounts
或127.0.0.1/login
代替127.0.0.1/en/accounts
或127.0.0.1/en/login
。
最初,当我只有一个运行在127.0.0.1的Django应用程序时,所有事情都运行良好,因为我的WSGIScriptAlias
指向/
而不是/en
或{{1} }。
提前致谢:)
答案 0 :(得分:2)
如果您希望应用显示为:
http://127.0.0.1/en/
http://127.0.0.1/jp/
然后你应该使用:
WSGIDaemonProcess khdx_wsgi user=galdosd group=galdosd maximum-requests=10000
WSGIScriptAlias /en /home/galdosd/khdxweb/rel/khdx/apache/django.wsgi
<Location /en>
WSGIProcessGroup khdx_wsgi
</Location>
WSGIDaemonProcess sauron_wsgi user=galdosd group=galdosd maximum-requests=10000
WSGIScriptAlias /jp /home/galdosd/finalsauronweb/django-root/apache/django.wsgi
<Location /jp>
WSGIProcessGroup sauron_wsgi
</Location>
不知道/ khdx和/ sauron的子URL挂载点来自哪里,但它不会产生你想要的结果。
我实际上会将上述内容进一步简化为:
WSGIDaemonProcess khdx_wsgi user=galdosd group=galdosd maximum-requests=10000
WSGIScriptAlias /en /home/galdosd/khdxweb/rel/khdx/apache/django.wsgi process-group=khdx_wsgi application-group=%{GLOBAL}
WSGIDaemonProcess sauron_wsgi user=galdosd group=galdosd maximum-requests=10000
WSGIScriptAlias /jp /home/galdosd/finalsauronweb/django-root/apache/django.wsgi process-group=sauron_wsgi application-group=%{GLOBAL}
请确保您使用的是mod_wsgi 3.0或更高版本而不是某些古老的2.X版本。
还要确保在代码中使用正确的模板宏和代码函数来正确计算URL时需要在响应中填写它们,否则它们可能会丢失挂载点。
还使用适当的方法将Django版本用于填写登录/注销URL中的挂载点。较旧的Django版本要求您在设置文件中明确地将en和jp作为登录/注销URL设置的一部分。这些天你可以使用一些神奇的功能,它们会自动为它们添加挂载点,这样你就不会在设置中的登录/注销URL路径中嵌入挂载点的知识。
因此,请使用该配置,如果仍有问题,请根据该配置重新提出问题。
答案 1 :(得分:1)
这里不需要单独的申请。您可以使用language prefix in Django URLs以所需的方式实现基于语言的视图。