我在 Windows XP 上安装了 Python 2.5,并且在某个目录中提供了一组脚本。根据Amanda Birmingham 的这篇文章,我可以为 Python 可执行文件和脚本所在的位置设置一个路径。这意味着我可以这样做:
c:\>python script.py
Run Code Online (Sandbox Code Playgroud)
有没有办法我可以注册 .py 文件,这样我就可以像这样执行它们:
c:\>script.py
Run Code Online (Sandbox Code Playgroud)
在脚本中不包含shebang或env行。
少打字就好。:)
我在虚拟机上运行了 nginx,我想运行一个 Trac 站点。我需要运行一个Python FastCGI的服务器,但我不能告诉它的使用服务器。我发现了以下内容:
是否有任何最近的设置指南?Trac 自己的 FastCGI 设置页面似乎遗漏了一些步骤。
我正在开展一个项目,为常见的 Web/Internet 任务创建一些极其精简的界面,以使我的视力受损的祖母可以访问计算机。目前她使用 Mac OS X Mail.app,但我有一个想法,我可以重新设计在我自己的服务器上运行的网络邮件界面,以便她更容易使用。
用作起点的理想 Web 邮件界面应该没有框架或 AJAX,并用 Python、Perl 或 PHP5+ 编写,但只要模板和样式表文件与应用程序本身分开,任何设置都可以工作。
该前端还必须连接到远程 IMAP 服务器,因为她的电子邮件帐户在她的 ISP 处而不在我的服务器上。
任何人都可以推荐一个简单的,严肃的网络邮件界面,适用于此吗?
如何更改 mod_wsgi 使用的默认版本?
我将 Debian 5 与 Apache 2 一起使用。
在过去的几天里,我一直试图让xpra在 OS X 上运行以连接到我的 Ubuntu 服务器。请注意,它有一个名为 shifter 的 GUI,但是(至少在 OS X 上)仍然有太多问题。
对于那些不知道 xpra 是什么的人,如果您知道什么是屏幕,它就像是通过 ssh 隧道传输的 GUI X Windows 应用程序的屏幕。您可以在本地渲染远程 X 应用程序,因此它比发送一系列压缩屏幕截图(如 VNC)要快,但使用 xpra,您可以在不同的计算机上断开连接并重新连接。要获得基本功能,您只需键入“ssh -X server.location”,您从命令行打开的任何 GUI 应用程序都将在本地打开。
我已经能够通过执行以下操作来构建 xpra:
现在我很难过:我如何运行 xpra?构建会生成一个名为 install/bin 的子目录,xpra 位于其中,但是当我尝试运行它时,出现以下错误:
Traceback (most recent call last): …Run Code Online (Sandbox Code Playgroud) 目标是能够执行存储在 WWW 目录中的任意脚本文件,例如http://www.example.com/*.py.
我不想为每个请求生成一个新的 Python 实例(解释器)(就像在常规 CGI 中所做的那样,如果我没记错的话),这就是我使用 FastCGI 的原因。
根据Lighttpd 的文档,以下是我的配置文件的 FastCGI 部分。问题是它总是/usr/local/bin/python-fcgi为每个 *.py 文件运行脚本,而不管该文件的内容如何:
http://www.example.com/script.py [output=>] "python-fcgi: test"
(无论内容如何script.py)
我对使用任何框架不感兴趣,而只是执行单独的 [web] 脚本。
我怎样才能让它像 PHP 一样运行,通过请求它的路径来执行 WWW 目录中的任何脚本?
/etc/lighttpd/conf.d/fastcgi.conf:
server.modules += ( "mod_fastcgi" )
index-file.names += ( "index.php" )
fastcgi.server = (
".php" => (
"localhost" => (
"bin-path" => "/usr/bin/php-cgi",
"socket" => "/var/run/lighttpd/php-fastcgi.sock",
"max-procs" => 4, # default value
"bin-environment" => ( …Run Code Online (Sandbox Code Playgroud) 我已经在我的 Ubuntu 10.04 上构建/安装了 Python 2.7,我刚刚看到 SSL 没有激活。
我必须重建 Python 吗?
如何使用 SSL 支持重建它并更新我当前的安装?
我不希望并行进行新安装。
尝试使用 oauth2:
>>> import oauth2
Run Code Online (Sandbox Code Playgroud)
回溯(最近一次调用最后一次):
文件“”,第 1 行,在
文件“/usr/local/lib/python2.7/site-packages/oauth2/ init .py”中,第 32 行,在 import httplib2
文件“/usr”中/local/lib/python2.7/site-packages/httplib2/ INIT py”为,线801,在类HTTPSConnectionWithTimeout(httplib.HTTPSConnection):
AttributeError的: '模块'对象没有属性'HTTPSConnection'
文档告诉你
HTTPS 支持仅在使用 SSL 支持编译套接字模块时可用。
所以我想激活 SSL 支持
尝试安装 pyOpenSSL
$ python setup.py build
Run Code Online (Sandbox Code Playgroud)
给这个
/usr/local/lib/python2.7/distutils/dist.py:267: UserWarning: Unknown distribution option: 'zip_safe'
warnings.warn(msg)
running build
running build_py
running build_ext
building 'OpenSSL.crypto' extension
gcc -pthread -fno-strict-aliasing -g -O2 -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -fPIC …Run Code Online (Sandbox Code Playgroud) 我们有一个本地 LDAP 目录,提供有关我们用户社区的基本联系信息。我们希望将其集成到一些第三方托管服务中,这些服务允许我们实现运行任意 Javascript 的小部件。
为了将 Javascript 连接到我们的 LDAP 目录,我想设置一个简单的 LDAP-to-HTTP 代理,该代理将接受 HTTP GET 请求,将它们转换为适当的 LDAP 查询,并以 JSON 编码数据的目录信息作为响应。
在理想的世界中,是这样的:
GET /ldap?mail=bob@example.com
Run Code Online (Sandbox Code Playgroud)
会给我这样的东西:
{
"cn": "Bob Person",
"title": "System Administrator",
"sn": "Person",
"mail": "bob@example.com",
"telepehoneNumber": "617-555-1212",
"givenName": "Bob"
}
Run Code Online (Sandbox Code Playgroud)
(这显然假设 Web 应用程序在本地配置了有关要使用的基本 DN、如何进行身份验证等的信息)。
我想我可以写一个……但肯定已经存在这样的东西了吗?
我正在尝试设计一种架构来处理大量 TCP 套接字连接,但我对这种架构的局限性表示怀疑。
我将不得不处理大约 20k 个并发TCP 连接,这些连接是长轮询连接,它们将保持连接很长时间,并且每分钟发送一次数据。
使用线程是没有问题的,因为 20k 线程会耗尽系统资源。我打算使用gevent来处理如此多的并发连接,或者甚至使用haproxy和 2 个服务器(w/gevent)来处理每个连接 10k 个连接。这有道理吗?有没有人有一些建议或有使用具有 10K+ 连接的gevent 的经验?有没有人知道处理这些连接的硬件要求?我看到一些基准测试显示了 5k 并发连接上 gevent 的大量连接超时,这对我的问题来说不是很有希望。
注意:我已经阅读了关于 C10k 问题和“百万用户彗星应用程序”的建议。
我正在使用 Puppet 使用 pip 安装一些 Python 包。我使用的是 Puppet 2.7,所以我的包声明看起来像这样:
package { "carbon":
require => Class["graphite::prereqs::install"],
ensure => latest,
provider => pip,
}
Run Code Online (Sandbox Code Playgroud)
问题是这个包和graphite-web包似乎都有一个错误,可以使用 pip 多次安装相同的版本。所以如果我sudo pip install carbon多次输入,pip 每次都会安装它。我相信这是软件包的错误。
这个错误似乎也让 Puppet 感到困惑,因为每次我配置我的系统carbon并graphite-web重新安装时。
因此,我想知道是否有办法解决这个明显的打包错误。我尝试了以下方法:
package { "carbon":
require => Class["graphite::prereqs::install"],
ensure => latest,
provider => pip,
creates => "/opt/graphite/bin/carbon-cache.py",
}
Run Code Online (Sandbox Code Playgroud)
...但我不能使用创建。有没有另一种方法可以告诉包声明在安装包之前查找文件?