标签: mod-wsgi

Django (wsgi) 和 Wordpress 在 Apache 虚拟主机中共存

我有一个 Django 项目,需要将其安装在 url 的两个不同子目录中,并且需要在 / 运行 Wordpress。所以:

*.example.com - WordPress
*.example.com/studio - django
*.example.com/accounts - django
Run Code Online (Sandbox Code Playgroud)

这是我迄今为止拥有的 httpd.conf:

<VirtualHost *:80>
    ServerName wildcard.localhost
    ServerAlias *.localhost

    AddType application/x-httpd-php .php
    DocumentRoot /var/empty

    Alias /site_media/ /home/zach/projects/python/myproject/static/
    Alias /media/ /home/zach/projects/python/myproject/env/lib/python2.6/site-packages/django/contrib/admin/media/
    Alias / /home/zach/projects/python/myproject/wordpress/

    WSGIScriptAlias /accounts /home/zach/projects/python/myproject/app/privio.wsgi
    WSGIScriptAlias /studio /home/zach/projects/python/myproject/app/privio.wsgi

    <Directory /home/zach/projects/python/myproject/app>
    Order allow,deny
    Allow from all
    </Directory>

    <Directory /home/zach/projects/python/myproject/wordpress>
    Order allow,deny
    Allow from all
    </Directory>
Run Code Online (Sandbox Code Playgroud)

在我添加 WordPress 的配置之前,Django 应用程序运行良好。但是通过这个新设置,我可以在 / 看到 WordPress 安装,但 Django 应用程序没有得到服务。我对 Apache 配置有点菜鸟 - 我缺少什么?

django wordpress mod-wsgi apache-config

3
推荐指数
1
解决办法
2110
查看次数

apache mod_wsgi django 应用程序的基本身份验证

我已经完成了第一个基于 django 的网站,并准备在实时服务器上部署。但是,我不希望在调整和测试时暂时向公众显示该网站。

在 PHP 网站上,我总是通过 .htaccess 使用基本的 http 身份验证来进行最后的更改。这是一个两层线路,拒绝访问整个站点。

理想情况下,我想运行这样的环境:

  • static.mydomain.com(由 apache2 提供静态文件)
  • mydomain.com(由 apache2 提供 mod_wsgi 最新稳定版本 -> 可供公众使用)
  • dev.mydomain.com(由 apache2 与 mod_wsgi dev/testing 提供服务 -> 不适用于公众(基本身份验证))

这可以用 django/apache2/mod_wsgi 来完成吗?

apache django mod-wsgi

3
推荐指数
1
解决办法
4224
查看次数

如何诊断Apache2.4服务错误7024错误的功能

系统:

  • Windows 10 x64(有一些限制的企业计算机)
  • 阿帕奇 2.4 64 位
  • Python 3.7.1 64 位
  • mod_wsgi(今天使用 python setup.py install 从 github 构建)

我正在努力在 Windows 计算机上使用 Python 获取 Apache 服务器,并且我已正确配置服务器,以便让mod_wsig 文档Hello World!中的示例正常工作。

如果我只是启动C:\Apache24\bin\httpd.exe,这会起作用,我会在http://localhost:5000/看到 Hello World

然后我想让它作为服务运行,所以我调用

httpd.exe -k install

在 ApacheMonitor 中,我启动了新的 Apache2.4 服务,但出现启动失败错误。在 Windows 系统事件日志中,它显示Event ID: 7024一个特定于服务的错误:Incorrect function

当我运行时httpd.exe -k start -n "Apache2.4" -t它说Syntax OK

我找不到有关服务错误的更多信息。文件中没有任何内容error.log,我不知道还能在哪里查看,我要求提供有关如何诊断此问题的更多信息。

在我开始配置 Apache 使用 mod_wsgi 之前,启动服务是成功的,所以在这样做之后就发生了这种情况,此时我还没有配置任何其他内容。

python apache mod-wsgi

3
推荐指数
1
解决办法
2万
查看次数

mod_wsgi - 权限被拒绝 - 无法统计 Python 主目录

我正在尝试在运行 Ubuntu 20.04 的非托管 VPS 上运行 django。我连接到新安装的服务器,安装了 Django 和 Postresql。Apache 已经安装。然后我安装了 mod_wsgi。然后我尝试配置我的 .conf 文件。编辑后的文件 etc\apache2\sites-available\000-default.conf 包括以下内容:

    Alias /static /root/django-apps/dmsemapping/staticfiles
    <Directory /root/django-apps/dmsemapping/staticfiles>
        Require all granted
    </Directory>

    <Directory /root/django-apps/dmsemapping/dmsemapping>
        <Files wsgi.py>
            Require all granted
        </Files>
    </Directory>

    WSGIDaemonProcess dmsemapping python-path=/root/django-apps/dmsemapping python-home=/root/django-apps/env
    WSGIProcessGroup dmsemapping
    WSGIScriptAlias / /root/django-apps/dmsemapping/dmsemapping/wsgi.py
Run Code Online (Sandbox Code Playgroud)

dmsemapping是我的 django 项目的名称 /root/django-apps/dmsemapping是我的项目的路径 /root/django-apps/env是我的 python 环境变量的路径

当我运行这个程序时,我收到 403 错误。在 error.log 文件中我得到:

Current thread 0x00007f84dde19c40 (most recent call first):
<no Python frame>
[Tue Oct 26 22:55:44.887129 2021] [wsgi:warn] [pid 12089:tid 140208634960960] (13)Permission denied: mod_wsgi …
Run Code Online (Sandbox Code Playgroud)

django mod-wsgi python-3.x

3
推荐指数
1
解决办法
2684
查看次数

Apache在响应gzip压缩请求时滞后

对于我正在开发的应用程序,用户使用多部分表单数据(内容类型:multipart/form-data)提交gzip压缩HTTP POST请求(内容编码:GZIP).我使用mod_deflate作为输入过滤器进行解压缩,并通过mod_wsgi在Django中处理Web请求.

一般来说,一切都很好.但对于某些请求(确定性的),从请求到响应几乎有一分钟的延迟.调查显示django中的处理是立即完成的,但是来自服务器的响应停止.如果请求不是GZIPed,则一切正常.

请注意,为了处理mod_wsgi中的毛刺,我将content-length设置为未压缩的mesage大小.

有没有人遇到这个问题?有没有办法在处理响应时轻松调试apache?

apache django gzip mod-wsgi mod-deflate

2
推荐指数
1
解决办法
989
查看次数

有没有办法并排安装Django 1.2和1.3?

我需要在我的一个项目中使用Django 1.2.
我也已在同一台服务器上运行Django 1.3上的几个项目,我需要让它们继续运行.

有没有办法只为特定项目使用1.2?
这两个站点都通过mod_wsgi在Apache上运行.

apache django mod-wsgi django-1.3

2
推荐指数
1
解决办法
219
查看次数

一台服务器上有多个Django应用

如何在多个域上提供多个Django应用程序?

例如我有

djangoapp1.com和djangoapp2.com

然后,我在两个不同的位置拥有两个独立的应用程序

/ srv / www / djangoapp1 / srv / www / djangoapp2

我正在使用mod_wsgi运行Apache2,目前在其httpd.conf中包含以下内容

WSGIScriptAlias / /srv/www/app1/app1/wsgi.py
WSGIPythonPath /srv/www/app1

<Directory /srv/www/app1/system>
<Files wsgi.py>
Order deny,allow
Allow from all
</Files>
</Directory>
Run Code Online (Sandbox Code Playgroud)

然后,我显然也有了虚拟主机,并且得到了django默认安装页面,但是现在我想提供第二个应用程序,有人可以指出正确的方法吗?

Django V:1.4.1

python apache django mod-wsgi

2
推荐指数
2
解决办法
6433
查看次数

无法获取管理员工作的静态文件

就像标题所说,404s所有内容:

Page not found (404)
Request Method:     GET
Request URL:    http://localhost/static/admin/css/base.css

Using the URLconf defined in djcms.urls, Django tried these URL patterns, in this order:

    ^admin/

The current URL, static/admin/css/base.css, didn't match any of these.
Run Code Online (Sandbox Code Playgroud)

基本上我只是关注DjangoProject.com上的教程,所以除了Django之外没有什么比这更复杂的了.

我的文件夹结构如下:

root@jerkstore:/var/www/djcms# ls -lsa
total 36
4 drwxrwxr-x  6 myusername myusername 4096 Jul 11 11:49 .
4 drwxr-xr-x 10 myusername www-data  4096 Jul 10 16:34 ..
4 drwxrwxr-x  5 myusername myusername 4096 Jul 11 11:40 admin
4 drwxrwxr-x  2 myusername myusername 4096 Jul 11 …
Run Code Online (Sandbox Code Playgroud)

python apache django mod-wsgi

2
推荐指数
1
解决办法
4120
查看次数

致命的Python错误:PyEval_AcquireThread

我只是在网上安装了一个django应用程序,我在错误日志中收到此错误

Fatal Python error: PyEval_AcquireThread: NULL new thread state
Run Code Online (Sandbox Code Playgroud)

我在网上看到了一些类似的问题,但他们没有解释这个错误.

django mod-wsgi apache2

2
推荐指数
1
解决办法
4961
查看次数

mod_wsgi在python 2.7.3中编译,运行时在python 2.7.4中编译

我试图让我的Apache服务器运行mod_wsgi并收到此错误:

[Fri Jul 19 10:24:05 2013] [warn] mod_wsgi: Compiled for Python/2.7.3.
[Fri Jul 19 10:24:05 2013] [warn] mod_wsgi: Runtime using Python/2.7.4.
Run Code Online (Sandbox Code Playgroud)

这是通过进入/usr/local/srcPython所在位置并运行来解决的:

./configure --enable-shared
make install
Run Code Online (Sandbox Code Playgroud)

到目前为止我所看到的似乎修复需要mod_wsgi必须能够访问所有Python库,因此运行--enable-shared命令将允许它工作.[warn]在我的Apache error.log中看到上面的行之后,它说它无法在我的DJANGO_SETTINGS_MODULE settings.py文件中查找环境变量.当我替换这些变量时,它会说它可以在其他地方查找其他Python包.

我在Rackspace VPS上运行Ubuntu Linux 13.04,使用Django 1.5.2,在我的本地机器上运行Python 2.7.3,但Rackspace VPS的本机Python是2.7.4.我目前使用的mod_wsgi版本是3.4

我找到了这个链接

http://code.google.com/p/modwsgi/wiki/InstallationIssues

在"Python补丁级别不匹配"一节中,它似乎说我必须重建mod_wsgi,但这听起来有点困难,所以想问一下是否有更简单的修复?

先感谢您,

python django ubuntu mod-wsgi

2
推荐指数
1
解决办法
2893
查看次数