问题标签 [mod-python]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
2019 浏览

python - mod_python.publisher 总是给出内容类型'text/plain'

我刚刚用 apache 设置了 mod python,我试图让一个简单的脚本工作,但是当我加载页面时,它会将我所有的 html 作为纯文本发布。我认为这是 mod_python.publisher 的问题,我也设置了它的处理程序。我搜索了它的源代码,找到了区分'text/plain'和'text/html'的行,它在我的脚本中搜索它输出的文件的最后一百个字符,所以我把它放进去,然后它仍然没有工作。我什至尝试注释掉一些代码,以便发布者将所有内容设置为“文本/html”,但当我刷新页面时它仍然做同样的事情。也许我设置了错误的东西。

这是我在 httpd.conf 中的配置

<Directory "C:/Program Files/Apache Software Foundation/Apache2.2/htdocs">
SetHandler mod_python
PythonHandler mod_python.publisher
PythonDebug On
</Directory>

0 投票
2 回答
313 浏览

python - 如何访问 mod_python 目录中的根路径?

在我的 Apache 网络服务器中,我放了这个:

然后我有一个带有索引函数的 handler.py 文件。

当我访问 MYDOMAIN.com/handler.py 时,我看到一个由 index 函数生成的网页(只是一个普通的 HTML 页面)。其他所有页面都属于这种类型:MYDOMAIN.com/handler.py/ somename其中somename对应于 handler.py 文件中的函数。

但是当我访问 MYDOMAIN.com 时,我得到了这个:

未找到

在此服务器上找不到请求的 URL /。

mod_python 和发布者有没有办法只使用根而不是 name.py 作为起点?

我已经在 apache conf 文件中尝试过这个:

DirectoryIndex handler.py

无济于事:(

0 投票
3 回答
20137 浏览

python - 在 Windows/Apache 上设置 Python?

我想获得一个简单的 Python “hello world”网页脚本以在 Windows Vista/Apache 上运行但遇到不同的问题。我正在使用 WAMP。我已经安装mod_python并且模块显示了,但是我不太确定我应该在例如 http.conf 中做什么(像 AddHandler mod_python .py 这样的东西要么把我带到一个找不到的文件,要么被禁止,要么模块访问http://localhost/myfolder/index.py时未发现错误)。我可以开始mod_python.publisher工作,但我“想要”这个/需要这个吗?

任何人都可以帮忙吗?

谢谢!

0 投票
3 回答
570 浏览

django - 为什么我的 Django 应用程序不能与 Apache/mod_python 一起使用?

我有 Apache 设置来服务来自该目录的http://www.mysite.com请求:

/var/www/html/www.mysite.com

Django 站点位于 /var/www/html/www.mysite.com/mysite。

当我向 /mysite/app/foo 发出请求时出现此错误:

(大堆栈跟踪)AttributeError:'module'对象没有属性'common'

'myapp.common' 是settings.py 文件中 INSTALLED_APPS 中所有 django 应用程序(例如 'django.contrib.admin')之后列出的第一项。如果我更改列出的模块的顺序,Django 会在它遇到的我的一个应用程序的第一个路径上阻塞。

Python 导入路径似乎是正确的,因为它找到了 mysite.settings:

可能是什么问题呢?奇怪的是,当实际列表包含“mysite.common”时,它却在抱怨“common”:

这是 Django 错误还是我配置错误?也许需要将一些外部依赖项添加到导入路径中?它适用于 Django 开发服务器。

0 投票
5 回答
9276 浏览

windows - Django Apache/mod_python Admin CSS 没有出现在管理表中

我有 Windows XP/Django/apache/mod_python 在本地主机上工作。除了管理 CSS 不呈现之外,所有部分都在工作。管理员工作,但没有 html 格式。我在以下方面做了补充:

我难住了。我应该在某处添加更多代码吗?

0 投票
10 回答
20062 浏览

python - 减少 Django 内存使用。低悬的果实?

我的内存使用量随着时间的推移而增加,并且重新启动 Django 对用户不利。

我不确定如何分析内存使用情况,但一些关于如何开始测量的提示会很有用。

我有一种感觉,有一些简单的步骤可以产生巨大的收益。确保“调试”设置为“假”显然是一件大事。

任何人都可以建议其他人吗?在低流量站点上缓存会有多大改进?

在这种情况下,我使用 mod_python 在 Apache 2.x 下运行。我听说 mod_wsgi 有点精简,但在这个阶段切换会很棘手,除非我知道收益会很大。

编辑:感谢到目前为止的提示。有什么建议如何发现内存用尽了吗?是否有 Python 内存分析的指南?

另外如前所述,有一些事情会使切换到 mod_wsgi 变得很棘手,所以我想在朝着这个方向前进之前对我可以期待的收益有所了解。

编辑: Carl 在这里发布了一个更详细的回复,值得一读:Django Deployment:Cutting Apache's Overhead

编辑: Graham Dumpleton 的文章是我在 MPM 和 mod_wsgi 相关内容上找到的最好的文章。我相当失望的是,没有人可以提供任何有关调试应用程序本身内存使用情况的信息。

最终编辑:嗯,我一直在与 Webfaction 讨论这个问题,看看他们是否可以帮助重新编译 Apache,这是他们对此事的看法:

“我真的认为切换到 MPM Worker + mod_wsgi 设置不会给您带来太多好处。我估计您可能能够节省大约 20MB,但可能不会更多。”

所以!这让我回到了我最初的问题(我仍然对此一无所知)。如何确定问题所在?这是一个众所周知的格言,没有测试就不会优化,看看你需要优化的地方,但是关于测量 Python 内存使用的教程很少,而且根本没有特定于 Django。

感谢大家的帮助,但我认为这个问题仍然悬而未决!

另一个最终编辑;-)

我在 django-users 列表上问了这个问题,得到了一些非常有用的回复

老实说最后一次更新!

这是刚刚发布的。可能是最好的解决方案:Profiling Django object size and memory usage with Pympler

0 投票
5 回答
1632 浏览

django - 在 Apache mod_python 上部署 django 应用程序

我已经在 django 中创建了一个名为“kazbah”的站点,并且正在尝试部署。

kazbah 站点的所有代码都在 /home/git/DjangoProjects/kazbah 中,我的 httpd.conf 如下所示:

我收到以下错误:

ImportError:无法导入设置“kazbah.settings”(它在 sys.path 上吗?是否有语法错误?):没有名为 kazbah.settings 的模块

知道为什么这个菜鸟会失败吗?

0 投票
2 回答
890 浏览

python - 从 Apache 调用 Wine

我有使用在 Gentoo linux 下运行的 mod_python 3.3.1/Python 2.5 的 Apache/2.2.11。在我的 python 脚本中,我使用 wine(os.popen2 调用)调用了一个 win32 exe。这在 Apache 之外运行良好,但在 mod_python 下我得到:

在 /var/log/apache/error_log 中。我的 apache 安装没有作为 root 用户/组运行。有什么想法为什么要调查 /root/.wine 吗?

0 投票
1 回答
153 浏览

django - 如何确保 url 在内置 Web 服务器和 Apache 中的工作方式相同

情况是:
我在 windows xp 上有带有 mod_python 的 Apache,而我的 django 项目不在文档根目录中。
Django 项目位置是用标签定义的。django.root 也在那里定义。
所有 url 在内置服务器中都可以正常工作,但不幸的是在 Apache 中不行。在某些 URL 中,尤其是那些不指向管理员的 URL 不起作用。django.root 部分被切断。
我怎样才能避免这种情况?

一种解决方案是将 django-project 设置为 Apache 的文档根目录。还有其他解决方案吗?

0 投票
3 回答
3043 浏览

django - 使用 mod_python 设置 Django,使用 Alias 在 SuSE 上设置 Apache

我在让 Django 使用我的 Apache 配置时遇到了重大问题。我没有创建服务器,所以我对服务器的工作方式没有太多的余地。本质上存在三个虚拟主机:

board.site.org、students.site.org 和 Insider.site.org

Insider.site.org 是我关心的主要网站。我负责它下面的一个小站点(最好是 insider.site.org/tech)。我决定将我的文件与原始目录分开,以免弄乱那里的东西(因为已经有一个非 python 站点)。无论如何,我的虚拟主机是在 /etc/apache2/vhosts.d/ 的单独文件中定义的

这是 insider.site.org 的配置的样子

Insider.conf

  • 请注意,当说 site.org 时,我指的是我的网站,而不是实际的“site.org”网址。

现在,这似乎对我来说应该是正确的,但由于某种原因,访问http://insider.site.org/tech/给了我这个错误:

Mod_python 错误:“PythonHandler mod_python.publisher”

回溯(最近一次通话最后):

文件“/usr/lib64/python2.4/site-packages/mod_python/apache.py”,第 299 行,在 HandlerDispatch 结果 = object(req)

文件“/usr/lib64/python2.4/site-packages/mod_python/publisher.py”,第 98 行,在处理程序路径 = [路径])

文件“/usr/lib64/python2.4/site-packages/mod_python/apache.py”,第 454 行,在 import_module f, p, d = imp.find_module(parts[i], path)

ImportError:没有名为索引的模块

http://insider.site.org/tech(没有尾部正斜杠)会导致 403 错误。我在这个目录中确实有 Django,但它根本没有被执行(我在 tech 文件夹下的所有目录中都有 _ init _.py,这是我自己的个人计算机的副本(它从 django 中运行)测试服务器))所以我认为这不是问题。这根本行不通:-(

任何帮助表示赞赏,谢谢。