python - Mac OS X Snow Leopard 上的 MOD_WSGI 困难

标签 python apache macos xampp mod-wsgi

今天我一整天都在尝试让 MOD_WSGI 在我的 Mac OS X Snow Leopard 上通过 XAMPP 在 Apache 上运行,但没有成功。我已遵循所有说明,在互联网上搜索解决方案等,但到目前为止还没有运气。以下是我的确切步骤和详细信息。当我运行 localhost 时,我得到的只是一个白屏。当我从 httpd.conf 中删除“LoadModule wsgi_module modules/mod_wsgi.so”时,本地主机按预期运行。

  1. 已下载并安装 Xcode。
  2. XAMPP 已安装并正在运行。
  3. 我不需要安装 Python,因为 OS X 已经有 64 位模式的 Python 2.6。
  4. 下载 mod_wsgi-2.6.tar.gz 并将其解压到桌面。
  5. 终端“./configure --with-apxs=/Applications/XAMPP/xamppfiles/bin/apxs --with-python=/System/Library/Frameworks/Python.framework/Versions/2.6/bin/python2.6 “(没有错误)
  6. 终端“make”(消息“make:不对‘all’执行任何操作。”)
  7. 终端“sudo make install”(无错误)
  8. 添加到 XAMPP 的 httpd.conf 文件:

LoadModule <code>wsgi_module modules/mod_wsgi.so</code><br/> AddType text/html .py<br/> WSGIScriptAlias /app-sample "/Applications/xampp/xamppfiles/htdocs/app-sample/main.py"

<pre><code><Directory "/Applications/xampp/xamppfiles/htdocs/app-sample"> Order deny,allow Allow from all </Directory> </code></pre>

  • 通过 XAMPP 重新启动 Apache
  • 最佳答案

    首先,运行“make distclean”,然后为 mod_wsgi 重新配置/make/make install。如果您有“终端“make”(消息“make:对‘all’不执行任何操作。”)”,则表示目录中有先前的构建结果,并且没有为执行 make 构建任何内容。

    接下来,使用“.wsgi”扩展名而不是“.py”,以确保不会与现有定义冲突,现有定义规定“.py”文件应作为 CGI 脚本执行。这是空白回复的常见原因之一。 Apache 错误日志应该为您提供有关问题所在的线索。

    另外,您的示例应用程序有什么作用?您是否尝试过按照 mod_wsgi 站点上的文档使用简单的 hello world 程序,而不是跳转到使用您自己的程序。如果仅使用您自己的程序,那么您可能会由于正在使用的 Apache 和 Python 模块之间的某些共享库冲突而导致 Apache 进程崩溃,其他原因会导致空白响应。再次仔细检查 Apache 错误日志以获取发出请求时记录的信息。

    最后,您的程序可能存在错误,并且返回的 HTML 响应中的语法错误,导致其无法显示。要求浏览器显示请求返回的页面的源代码,并确保它不是格式错误的 HTML。

    关于python - Mac OS X Snow Leopard 上的 MOD_WSGI 困难,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1665994/

    相关文章:

    Python导入CSV排序代码( Pandas ?)在条目中用 ';'和 ','分隔

    python - 如何将 python 3.9.1 设​​为我在 MacOs 上的默认版本

    python - 如何在圆的周长上画圆?

    java - 在 Mac 上使用 Eclipse 在 JavaFX 15 中未显示 GUI

    objective-c - 检查osx菜单栏是否半透明?

    Python 2.7 unicode 再次困惑

    php - Centos vm 上 Symfony 的权限问题

    php - 将 htaccess 重写规则移植到 hiphop-php 配置

    java - Httpclient 4.5 关闭 http 连接需要双倍时间

    c++ - 从 C++ 使用 NSProcessInfo