mod_WSGI 是否替换了 apache 正在做的事情以及我如何让 wsgi 仅在特定路径下工作
Is mod_WSGI replacing what apache is doing and how I can make wsgi work at a specific path only
我对 Apache 和 WSGI 很陌生,有很多事情让我感到困惑。
在 ubuntu 上全新安装 apache2 后,我可以打开此 URL 查看默认的 apache 页面 http://localhost/index.html
,文件位于 /var/www/html
。所以这是apache server提供的功能,服务于http连接。
这是目前的情况:
我创建了一个简单的 Django 项目并将 mod_wsgi 安装到我的 apache 服务器上,最后我成功地将项目部署到 apache 并且可以正确访问我创建的页面。
但是现在当我尝试访问上面提到的 index.html 时,它显示找不到 url 映射(是的,我在 django 项目中没有这个映射)。是 Django接管所有指向服务器的路径?
如何使 django 项目仅映射到特定路径,如 http://localhost/Django/[MY URL MAPPING]
并保持其他 url 映射不变。
所以我可以通过访问 http://localhost/index.html/
访问静态 HTML(index.html) 并通过访问 http:/localhost/Django/[xxx]
访问我的 Django 项目
这可能吗?或者我必须在另一个端口使用另一个虚拟主机?
任何帮助将不胜感激。
你可以通过在不同的点安装 Django 来做到这一点:
WSGIScriptAlias /Django /path/to/mysite.com/mysite/wsgi.py
这会在 /Django 运行 WSGI 应用程序,并让 Apache 直接为其余文件提供服务。
我对 Apache 和 WSGI 很陌生,有很多事情让我感到困惑。
在 ubuntu 上全新安装 apache2 后,我可以打开此 URL 查看默认的 apache 页面 http://localhost/index.html
,文件位于 /var/www/html
。所以这是apache server提供的功能,服务于http连接。
这是目前的情况:
我创建了一个简单的 Django 项目并将 mod_wsgi 安装到我的 apache 服务器上,最后我成功地将项目部署到 apache 并且可以正确访问我创建的页面。
但是现在当我尝试访问上面提到的 index.html 时,它显示找不到 url 映射(是的,我在 django 项目中没有这个映射)。是 Django接管所有指向服务器的路径?
如何使 django 项目仅映射到特定路径,如 http://localhost/Django/[MY URL MAPPING]
并保持其他 url 映射不变。
所以我可以通过访问 http://localhost/index.html/
访问静态 HTML(index.html) 并通过访问 http:/localhost/Django/[xxx]
这可能吗?或者我必须在另一个端口使用另一个虚拟主机? 任何帮助将不胜感激。
你可以通过在不同的点安装 Django 来做到这一点:
WSGIScriptAlias /Django /path/to/mysite.com/mysite/wsgi.py
这会在 /Django 运行 WSGI 应用程序,并让 Apache 直接为其余文件提供服务。