- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我正在 Ubuntu 12.04 LTS 上设置 Django 服务器,但我无法使用正确版本的 python 安装 mod-wsgi。我在本地使用 python 3.3 构建了我的站点,Ubuntu 12.04 与 python 3.2 捆绑在一起。我想我可以,但我不想只使用 3.2 而不是 3.3,所以我安装了 python 3.3 和 3.2。除了 mod-wsgi 之外,我已经为 python 3.3 安装了所有东西。
在我运行 python3.3 的本地机器上安装 libapache2-mod-wsgi-py3使用 sudo apt-get install libapache2-mod-wsgi-py3
为 python3.3 安装它。但是在 Ubuntu 服务器上,运行相同的代码会为 python3.2 安装它,这样 Web 服务器运行 3.2 并且找不到 django。
有没有办法禁用 python3.2,或者指向脚本为 python 3.3 安装它?
编辑:经过更多研究后,python3.2 没有与 ubuntu 捆绑在一起,而是与 libapache2-mod-wsgi-py3 一起安装
最佳答案
我发现了如何在 Ubuntu 12.04 LTS 上构建 mod_wsgi,以便与 Python 3.3.5 一起使用。
诀窍是能够安装 python3.3-dev 包,它在 Ubuntu 12.04 LTS(“精确”)上不受支持。有一个由 Felix Krull 维护的第 3 方存储库,它使旧的和新的 Python 构建可用(Felix 的荣誉!):
https://launchpad.net/~fkrull/+archive/deadsnakes
要安装 Felix 的存储库:
sudo add-apt-repository ppa:fkrull/deadsnakes
sudo apt-get update
在开始构建 mod_wsgi 之前,我们需要 apache2-dev 包 ...
sudo apt-get install apache2-dev
...并获取 python3.3-dev 包(这实际上也安装了 python3.3!)
sudo apt-get install python3.3-dev
下载 mod_wsgi 代码并通过提供新安装的 Python 库和 header (/usr/bin/python3.3) 的路径来构建它。最新 mod_wsgi 版本的下载链接可在以下位置找到:
https://github.com/GrahamDumpleton/mod_wsgi/releases
cd /usr/local/src
sudo wget https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/modwsgi/mod_wsgi-3.4.tar.gz
sudo tar -zxvf mod_wsgi-3.4.tar.gz
cd mod_wsgi-3.4/
sudo ./configure --with-python=/usr/bin/python3.3
sudo make
sudo make install
mod_wsgi.so放在/usr/lib/apache2/modules/
可选步骤:由于它们丢失了,我在/etc/apache2/mods-available 中手动(重新)创建了 wsgi.conf 和 wsgi.load 文件(尽管我不必设置任何特定选项)。
wsgi.conf:
<IfModule mod_wsgi.c>
# See http://code.google.com/p/modwsgi/wiki/ConfigurationDirectives
#WSGISocketPrefix: Configure directory to use for daemon sockets.
#WSGISocketPrefix /var/run/apache2/wsgi
#WSGIPythonOptimize: Enables basic Python optimisation features.
#WSGIPythonOptimize 0
#WSGIPythonPath: Additional directories to search for Python modules,
# overriding the PYTHONPATH environment variable.
#WSGIPythonPath directory|directory-1:directory-2:...
#WSGIPythonEggs: Directory to use for Python eggs cache.
#WSGIPythonEggs directory
#WSGIRestrictEmbedded: Enable restrictions on use of embedded mode.
#WSGIRestrictEmbedded On|Off
#WSGIRestrictStdin: Enable restrictions on use of STDIN.
#WSGIRestrictStdout: Enable restrictions on use of STDOUT.
#WSGIRestrictSignal: Enable restrictions on use of signal().
#WSGIRestrictStdin On
#WSGIRestrictStdout On
#WSGIRestrictSignal On
#WSGIAcceptMutex: Specify type of accept mutex used by daemon processes.
#WSGIAcceptMutex default
#WSGIImportScript: Specify a script file to be loaded on process start.
#WSGIImportScript process-group=name application-group=name
#WSGILazyInitialization: Enable/disable lazy initialisation of Python.
#WSGILazyInitialization On|Off
</IfModule>
wsgi.load:
LoadModule wsgi_module /usr/lib/apache2/modules/mod_wsgi.so
最后,可以通过创建这样的符号链接(symbolic link)来启用 mod_wsgi:
cd /etc/apache2/mods-enabled
sudo ln -s ../mods-available/wsgi.conf wsgi.conf
sudo ln -s ../mods-available/wsgi.load wsgi.load
让我知道这是否也适合您!
关于ubuntu - mod_wsgi 用于 python3 的正确版本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20913125/
大中型 python WSGI 应用,Apache + mod_wsgi 还是 Nginx + mod_wsgi 用什么? 哪种组合需要更多的内存和 CPU 时间? 哪个更快? 哪个以比另一个更稳定而
我通过 python CGI 脚本 (Apache2.4) 继承了在 AWS EC2 Windows 实例和 WAMP 服务器上运行的 Web 应用程序。我希望将 Web 应用程序转换为 Flask,
当我输入: [root@lts5 /]# ldd /usr/lib64/httpd/modules/mod_wsgi.so libpython2.5.so.1.0 => /root/epd-5
我正在尝试在 Ubuntu 16.04.6 服务器上部署带有 Apache2 和 mod_wsgi 的 Django 应用程序,但我正在努力让 mod_wsgi 使用正确的 python 版本。 我从
介绍 我有一个用 python 3 编写的 Web API,它使用 flask 。当我从终端运行 Web API 时,代码运行良好,它托管在代码的以下行中。 if __name__ == '__mai
我的 Django 项目中的 MemoryError 有一个奇怪的问题。 Ubuntu 11 Apache 2 Nginx mod_wsgi python2.7 我有一个使用 PIL 调整图像大小的模
在这里撕扯我的头发试图弄清楚为什么我的两个 Django 项目没有被分开提供......似乎首先访问的静态文件成为两个项目的事实上的静态文件,或者类似的东西。 我试图通过同一个 IP 地址的两个域名为
我正在通过发出一个需要 30 多分钟才能完成的请求来测试在 Apache Web 服务器上运行的 Python Flask Web 应用程序的限制。该请求需要向 MySQL 数据库发送数千个数据库请求
有谁知道如何制作mod_wsgi当任何模块更改时自动重新加载 Flask 应用程序?我试过WSGIScriptReloading On ,但没有运气。 official documentation有点
使用 mod_wsgi 部署应用程序时出现以下错误 [Thu Apr 07 11:23:32 2011] [error] [client localhost] IOError: [Errno 13]
我有用 Django 开发的普通内容管理网站。我的客户有一个具有 256 MB RAM 的服务器。他想以 wsgi 模式部署此站点。 256 MB RAM 是否足够?我对服务器 RAM 要求等一无所知
我对 Python 和 Python Web 应用程序开发比较陌生。目前我正在使用 mod_wsgi 在 Python 中创建一个 hello world 应用程序 这是我的配置。 Apache 配置
我有一个 wsgi 应用程序作为 mod_wsgi 守护进程(在守护进程模式下)运行。我的设置是每个守护进程在 1000 个请求后重新启动,如 mod_wsgi 配置指南中所示: http://cod
我在centos系统上安装了Postgres、mod_wsgi和python3.5。我已经测试了连接,它在交互式 Python shell 和开发应用程序中都运行良好(它是一个 Pyramid 应用程
我在 Centos 6 服务器上使用 Python Flask,mod_wsgi 突然不能工作了。 这是错误信息。 mod_wsgi (pid=6206): Target WSGI script '/
我一直在研究在运行 Python/mod_wsgi 的网络场中创建快速缓存的不同系统。 Memcache 和其他是选项......但我想知道: 因为我不需要跨机器共享数据,希望每台机器都维护一个本地缓
我在 apache2 上运行 mod_wsgi。它正在运行 Django,出于某种原因,在我更改代码后,旧版本有时会与新代码一起显示。 例如,在创建一个仅返回带“Hi”的 Http 响应的 View
当我尝试安装 mod_wsgi 时遇到以下错误 ./configure checking for apxs2... no checking for apxs... /usr/sbin/apxs che
我正在使用 Hostgator 开发 Linux Centos 虚拟主机。我使用的是 httpd 版本 2.2.15。 我使用标签 --with-python=/usr/local/bin/pytho
我使用 CherryPy、Apache 和 mod_wsgi 构建了一个网站,除了一个问题之外,一切都很好。当用户操作要求自动发送电子邮件时,我有时会使用 os.fork ,以便父进程可以立即返回并向
我是一名优秀的程序员,十分优秀!