Apache下执行时,django.urls.base.get_script_prefix返回错误的前缀
创始人
2024-09-06 16:30:51
0

该问题的解决方法是在Apache的配置文件中设置SCRIPT_NAME。如下所示:

在Apache的httpd.conf或者其他配置文件中添加以下行:

ScriptAlias /myapp /path/to/myapp

WSGIDaemonProcess myapp display-name=%{GROUP} python-path=/path/to/myapp:/path/to/virtualenv/lib/python3.8/site-packages

WSGIProcessGroup myapp

SetEnv SCRIPT_NAME /myapp

在这种情况下,将在灵活性和性能之间进行一些取舍。如果你想最大限度的改善性能,则可以将SCRIPT_NAME/route給封装在WSGIScriptAlias中并将应用程序封装在WSGIDaemonProcess和WSGIProcessGroup中。你还应该知道,如果你使用这个功能来避免在URL前面添加伪前缀,则必须确保Apache的DocumentRoot不包含您的Django代码。

如果你已经在Django的URLconf中用了针对根URL目录的显式视图函数或者模板,则在处理这些请求时必须使用SCRIPT_NAME。

还要在你的settings.py文件中设置STATIC_URL的值,否则所有的静态资源,如CSS和JavaScript文件,都将被请求到根目录下而不是”/myapp”目录下(或者你所设置的SCRIPT_NAME的命名的任何目录下)。

例如:

STATIC_URL = '/myapp/static/'

这个解决方法可以保证get_script_prefix能够正确的返回前缀。

相关内容

热门资讯

识别九分钟!德州竞技联盟辅助线... 识别九分钟!德州竞技联盟辅助线上德州后台可以操控(本来真的有挂)-知乎1、超多福利:超高返利,海量正...
输赢七分钟!wpk辅助神器aa... 输赢七分钟!wpk辅助神器aapoker有猫腻(都是真的有挂)-今日头条;暗藏猫腻,小编详细说明aa...
打法3分钟!aapoker软件... 打法3分钟!aapoker软件有猫腻cloudpoker辅助器(果真真的有挂)-小红书aapoker...
大厅房七分钟!德州辅助软件欢乐... 大厅房七分钟!德州辅助软件欢乐棋牌有外挂(一贯真的有挂)-百度知乎1、玩家可以在欢乐棋牌有外挂软件透...
辅助3分钟!微扑克ai代打Aa... 辅助3分钟!微扑克ai代打Aapoker app(一般真的有挂)-小红书1、微扑克ai代打ai辅助优...
计算器2分钟!wpk可以检测伙... 计算器2分钟!wpk可以检测伙牌wpk ai检测(一贯真的有挂)-哔哩哔哩1、玩家可以在wpk可以检...
靠谱8分钟!微扑克辅助软件wp... 靠谱8分钟!微扑克辅助软件wpk辅助(原来真的有挂)-小红书微扑克辅助软件辅助器中分为三种模型:微扑...
软件6分钟!fishpoker... 软件6分钟!fishpoker有挂来玩德州扑克约局神器(其实真的有挂)-小红书1、来玩德州扑克约局神...
软件3分钟!微扑克规律德扑之星... 软件3分钟!微扑克规律德扑之星真的太假了(总是真的有挂)-百度知乎1、在德扑之星真的太假了ai机器人...
app一分钟!微扑克有机器人德... app一分钟!微扑克有机器人德州wpk德州有挂(果真真的有挂)-小红书1、用户打开应用后不用登录就可...