- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个基本网址。 http://baseurl.com/我正在尝试在其背后运行项目。例如 http://baseurl.com/mongoose/项目运行但 URL 无法正常工作,因为它们都引用基本网址。因此,对于“关于我”页面,它指向 http://baseurl.com/about而不是http://baseurl.com/mongoose/about
这是我需要在 django 或 apache 中更改的内容吗?我就是这样尝试做一些可能的事?
来自 IIS .net 背景,我知道在 IIS 中,您可以在站点内“创建和应用程序”,这基本上实现了我现在试图使用 Apache 和 Django 实现的目标。
谢谢
最佳答案
您不需要做任何事情。 Apache 应该设置一个名为 SCRIPT_NAME
的请求 header ,这是您的基本 URL,所有 URL 反转都会考虑到这一点。
您如何在模板中创建这些 URL?
更新
所以你的问题是获取 Flatpages 的 URL。问题是动态计算 URL 的正常方法,以便它们确实考虑 SCRIPT_NAME
- 使用 reverse()
函数或 {% url % }
标签 - 不适用于 Flatpages,因为它们不是通过 urls.py 调度的,而是通过在 404 上触发的自定义中间件调度的。
因此,我不会使用该中间件,而是使用 urls.py 机制来分派(dispatch)到平面页面。从 settings.py 中删除 flatpagemiddleware,并在 urls.py 模式末尾添加以下内容:
url(r'^(?P<url>.*)$', 'django.contrib.flatpages.views.flatpage', name='flatpage'),
现在,在您的模板中,您可以执行以下操作:
<a href="{% url flatpage page.url %}">
它应该可以正常工作。
关于django - Apache | Django : How to run websites on the back of a base URL?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4447500/
我是一名优秀的程序员,十分优秀!