简介
我有一个关于localeURL用法的问题。 有了这样的网址,一切都很好: http://www.example.com/
如果我在地址栏中输入http://www.example.com/,它会在http://www.example.com/en/中正确转换。
如果我使用view change_语言环境,也可以(即changewww.example.com网站/英语/inwww.example.com网站/
问题
但我的应用程序使用apache作为服务器,并使用mod\wsgi。这个httpd.conf脚本包含以下行:
WSGIScriptAlias /MY_PREFIX /path/to/django/app/apache/django.wsgi
这样的url:
http://www.example.com/MY_PREFIX/
“更改”区域设置视图也出现了相同的问题。为了管理这个前缀(存储在settings.SERVER_前缀)公司名称:
^{pr2}$有了这个自定义视图,我可以正确地更改语言,但我不确定这是否是正确的方法。在
问题
什么时候,在httpd.conf您将WSGIScriptAlias与/PREFIX(ie“/Blog”)一起使用,我们是否需要在python端使用一个变量(这里是settings.SERVER_前缀)与WSGIScriptAlias匹配?我将其用于MEDIA_URL和其他东西,但可能需要进行一些配置,以便使其“自动”工作,而不必在python端管理它
您认为此自定义视图(更改语言环境)是管理此问题的正确方法吗?还是有什么汽车制造的东西,比如1?
如果我在地址栏中输入地址(http://www.example.com/MY_PREFIX/),这并不能解决问题。如果定制是一种方式,我也会改变这一点,但我认为有更好的解决方案!
试试这个(我不确定它是否有效):
^{pr 1}$
基本上是想让django相信没有前缀但是您需要确保django在其HTML输出中发出正确的url。在
您不应该在设置中使用硬连接服务器前缀。站点的装载前缀在WSGI环境字典中以脚本名的形式提供。因此,从内存中可以获得请求.META.get('SCRIPT_NAME')。在
相关问题 更多 >
编程相关推荐