- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有许多 django 应用程序在同一域中运行,但在让 SCRIPT_NAME 与 Gunicorn 正常工作时遇到问题。
示例应用程序路径:
场景 1: 我目前在 Elastic Beanstalk 上运行每个应用程序,并修改 apache 配置来处理 SCRIPT_NAME 方面的事情。这有效。
场景2:我一直在使用AWS ECS/FARGATE进行测试,在该配置中我只有一个运行Django/Gunicorn的容器。没有 Apache/Nginx 等。我打算只使用 Django/Gunicorn/Whitenoise/Cloudfront。 这不起作用。使 django 使用子路径的 SCRIPT_NAME 值是重复的。
为了简化/排除故障,我在本地运行下面的代码/命令,因此不涉及 AWS。我还创建了一个简单的 django 应用程序用于测试。
我的应用页面结构是这样的:
<a href="{% url 'demo:page1' %}">Page1</a>
<a href="{% url 'demo:home' %}">Home</a>
<a href="{% url 'demo:page2' %}">Page2</a>
<a href="{% url 'demo:home' %}">Home</a>
步骤:
我启动网络服务器: gunicorn config.wsgi --env SCRIPT_NAME=demo -b 0.0.0.0:80 --keep-alive 20 --log-file=- --log-level debug --capture-output
(它在 Docker 容器中运行)
我可以去http://127.0.0.0:8000/demo
。它按预期加载应用程序主页。
Page1 链接显示为 http://127.0.0.0:8000/demo/page1
,我单击,它按预期转到 Page1
首页链接显示为 http://127.0.0.0:8000/demo/demo/
。它的 SCRIPT_NAME 重复,并且链接不起作用。
你知道我做错了什么吗?这是否意味着工作?
最佳答案
您需要在服务器启动命令行中将“SCRIPT_NAME=demo”替换为“SCRIPT_NAME=/demo”(注意附加斜杠)。
关于Django + Gunicorn + SCRIPT_NAME,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54338420/
我有许多 django 应用程序在同一域中运行,但在让 SCRIPT_NAME 与 Gunicorn 正常工作时遇到问题。 示例应用程序路径: www.domain.com/app1 www.doma
我有许多 django 应用程序在同一域中运行,但在让 SCRIPT_NAME 与 Gunicorn 正常工作时遇到问题。 示例应用程序路径: www.domain.com/app1 www.doma
$_SERVER[PHP_SELF], $_SERVER[SCRIPT_NAME], $_SERVER['REQUEST_URI'] 在用法上是非常相似的,他们返回的都是与当前正在使用的页面地址有关
(初步说明:这个问题似乎已经有很多变体,但它们似乎都集中在物理 PHP 文件本身的文件系统位置,而不是网络 事物的 URL 位置,这就是我所追求的。) 简介 1: 我有一个小型“网站”,其物理文件系统
我不想将 GET 或 POST 变量传递给脚本。我想使用文件名并使用它从 php 脚本查找产品,例如: ....../DELL1500.php ....../COMPAQ1213.php 我有三个问题
我试图寻找差异,但每次变量都相同,有什么想法吗? 最佳答案 http://www.php.net/manual/en/reserved.variables.server.php 根据我的理解,如果您通
PHP_SELF 在包含诸如 echo $_SERVER['PHP_SELF'] 之类的代码时会为 XSS 攻击打开一个页面,但是 SCRIPT_NAME 呢? >?由于它不包含路径信息,因此可以安全
我正在维护一个经典的asp应用程序,在遍历代码时,我遇到了两行相似的代码: Request.ServerVariables("URL") ' Output: "/path/to/file.asp" R
所以我现在正在尝试在服务器上运行 Django 的多个实例,一个在 /dev/ 下,一个在 /test/ 下,等等。 网络服务器正在设置正确的 SCRIPT_NAME 设置,我可以正常提供页面、模板和
有什么区别: $_SERVER['SCRIPT_NAME'] 和 $_SERVER['PHP_SELF'] 谢谢。 最佳答案 它们应该包含相同的信息。但是,从历史和技术上来说,两者是有区别的。 SCR
我有一个简单的脚本 cpuinfo.sh 可以运行并且可执行。 我遇到了一个错误 *224 FastCGI 在标准错误中发送:“无法获取脚本名称,是否设置了 DOCUMENT_ROOT 和 SCRIP
我正在使用 Django 1.0.2 并试图弄清楚如何让@login_required 正常工作。 当我使用内置服务器时,它会按预期重定向到默认的 login_url,或我在 settings.py
我有一个 php 框架,我使用 $_SERVER['SCRIPT_NAME'] 来优化可移植性。这样我就不需要再手动配置路径了。 $this->base_url = str_replace('inde
这是我的 nginx 虚拟主机配置。 debian:~# cat /etc/nginx/sites-enabled/mybox server { listen 8080; root /
我正在 CodeIgniter 中构建一个 PHP 应用程序。 CodeIgniter 将所有请求发送到主 Controller :index.php。但是,我不喜欢在 URI 中看到 in
我正在尝试使用 mod_cgid 模块在 Apache 中部署我的 web.py 应用程序。 我在 urls.py 中定义了这样的 url urls = ( '/app/', 'index.i
我是一名优秀的程序员,十分优秀!