Articles of python

无法访问gce上的启用python flask的web服务器

我在GCE的虚拟机上运行一个非常简单的http服务器。 代码非常简单 from flask import Flask, render_template, request, json, abort app = Flask(__name__) @app.route('/', methods=['GET']) def heartbeat(): return 'hello' if __name__ == '__main__': app.run(host='0.0.0.0') 我可以在本地使用lynx访问服务器上的“/” 我没有修改任何防火墙规则。 这是规则的一部分: 这是与networking相关的虚拟机信息的一部分 你可以看到httpstream量是被允许的。 但是,当我试图从我的电脑连接到服务器,连接吨

如何运行将来可能会更改的多个正在进行的Python脚本?

在prod环境中,我想运行一些在启动时运行的python脚本,并且永远不会停止。 目前我正在尝试将它们作为守护进程来运行,即systemd中的这样的事情: #!/bin/bash python3 a.py& python3 b.py& python3 c.py& … 这是一种可持续的/正确的方式来实现我需要的东西吗? 而且,这些脚本将来也会有所改变。 还可以将它们拆分成更小的部分,以后不需要更改,但这会增加systemd中bash脚本中的python脚本的数量。 (想象一下,从各种来源获取数据,未来将继续增加数据源。)只要在列表中添加一个新脚本,并且每次需要新增内容时都可以启动一个服务,这将是一个不错的select吗? 非常感谢!

adquery命令返回空结果,但稍后它会给出预期的结果。 不寻常的行为

我们有一个拥有数百台服务器的服务器基础架构。 所有这些服务器都是通过密钥服务器访问的。 我们集中pipe理authentication。 所以我尝试的是我在密钥服务器中使用这个bash命令来列出组中的所有用户: adquery group GROUP_NAME -a 我在下面的python脚本中使用了这个结果来读取输出并将其input到名为users的variables中: users = os.popen("adquery group GROUP_NAME -a").read() 我遇到的问题是,当脚本运行两三次,它工作正常,突然间命令提供了一个空的输出。 当我尝试在Linux提示符下运行相同的命令时,它仍然失败。 但过了一段时间。 当我试图运行它的时候再次运行。 现在我甚至没有得到这种情况的模式。 但是,当发生这种情况时,任何有权访问该服务器的人都无法获得结果。 注 – 更新 。 还有一件事要补充。 当我尝试查询其他东西,如adquery user USERNAME -a 他们仍然工作。 它给出的输出没有问题。 但我之前提到的命令仍然失败,没有错误没有输出。 有人可以解释为什么会发生这种情况吗?

优雅的networking应用程序重新加载

我有一个通过Gunicorn运行的WSGI Python应用程序: CONFIG = { 'bind': "unix:{}".format(os.path.join(RUN_DIR, "brain.sock")), 'preload_app': False, # supervisord requires that the child process runs in foreground 'daemon': False, … } 它通过Nginx的套接字文件接收HTTP请求: server { … location / { proxy_pass http://unix:$root/run/brain.sock:; … } Gunicorn通过Supervisord运行: [program:myapp] command = venv/bin/gunicorn -c gunicorn.conf.py myapp.wsgi:application … 我正在考虑一种无需停机和等待时间来部署我的应用程序的方法。 每个工作人员最多可能需要30秒才能填满caching。 我的想法是这样部署的: 用新的代码启动第二个Gunicorn,它将监听另一个套接字文件。 等到应用程序开始,所有的caching被填满。 重命名套接字文件以指向Nginx使用的位置。 Nginx仍然会将请求发送到旧套接字。 用旧的应用程序版本closures老Gunicorn。 Nginx将会看到socket被closures,并且会从同一个地方重新打开一个新的socket。 这会工作吗? 我是否重新发明了轮子?

Python源RPMS的centos?

任何人都有一个链接到的网页,其中源代码的位置? 我正在寻找Python源代码生成一个debuggingPython二进制文件。

在部署django应用程序时,应该在Apache中设置DJANGO_SETTINGS_MODULE?

我正在部署一个Django的应用程序,但我似乎无法看到在Apacheconfiguration正确的设置。 我把我的django应用程序放在/path/to/mysite.com/teabag/current/ DirectoryIndex index.html DocumentRoot /path/to/mysite.com/teabag/current/ <Location "/"> SetHandler python-program PythonHandler django.core.handlers.modpython SetEnv DJANGO_SETTINGS_MODULE settings_production PythonPath "['/path/to/mysite.com/teabag/current'] + sys.path" PythonDebug On </Location> <Location "/media/"> SetHandler None </Location> <LocationMatch "\.(jpg|gif|png)$"> SetHandler None </LocationMatch> 但它给了我这个错误: ImportError: Could not import settings 'settings_production' (Is it on sys.path? Does it have syntax errors?): No module named settings_production 我有一个怀疑,我的Pythonpath是不正确的。 它应该在/path/to/mysite.com/teabag?上面一级,因此设置应该是“current.settings_production” 我有点卡住,任何帮助将不胜感激,谢谢。

无法在Mac OS X上运行Django

我正在使用我的Mac上的Django项目(运行Leopard ),我想把它展示给我的团队。 我已经从我的路由器将必要的端口转发到我的Mac的LAN IP地址,但它不起作用。 我也曾尝试运行XAMPP服务器,因为它始终与我的Windows XP计算机一起工作,但仍然无法正常工作。 每当我键入我的>它显示页面加载错误。 这可能是一个Mac OS Xconfiguration的问题,我需要先安装,以允许我的端口转发进入? 这是我第一次用Mac来做这个,也许我需要在networking偏好设置中configuration其他的东西。

在cygwin / XP下完全安装Python的最佳方法是什么?

安装在WinXP下的Python有类似于dll,DOC,include等dirs,但是用cygwin安装的python(2.5)是一个纯粹的python.exe。 我问的动机是,XP下的“事物”似乎没有在cygwin下find“其他的东西”,反之亦然,我想用Qt开始开发,我喜欢shell,而我不喜欢MS; 我想如果我把所有的组件都归于同一个屋檐下,我终于可以开始find可以find文件的可执行文件了。 1.我可以简单地将XP安装的内容复制到cygwin树中吗? 2. Python的XP风格与cygwin风格不同吗? (同样的CPU,他天真地指出)3.有人必须用一个完整的(如果有羽毛的蛇……)来自cygwin内部的Python; 怎么做? 免责声明1:我从来没有编译任何XP或Cygwin下的任何东西; 本来希望不必去那里,因此,python在第一位。 免责声明2:在StackOverflow上提出这个问题,但是在这里问了一个强烈的暗示,所以在这里。 回应这个评论:你能更具体地说“发现”“其他事物”的“事物”吗? 错误消息,例如。 另外,你用什么方法在Cygwin下安装Python? 你有没有考虑安装Linux的虚拟机与XP作为主机? – 丹尼斯·威廉姆森 错误消息:我期望它可以追溯到像$ PATH这样的环境variables的设置。 当我写一个Python脚本来打开在命令行上命名的文件时,我得到了错误,说“找不到文件”。 如果将脚本复制到工作目录中,则会消失。 我可能正在通过使用os.path.abspath()向脚本中引入完整,难看的文件名来解决这个问题。 我看到的另一种forms的“找不到”是cygwin没有find我希望使用的Python安装,无论是在C:(我的系统分区)还是在cygwin的/ usr / bin(也是/ cygdrive / d / cygwin / usr / bin(其中D :, aka / cygdrive / d是我的用户分区)。 我完全不能引用错误:没有把errmsg写下来,愚蠢。 在cygwin下安装Python的方法:使用它们的安装更新了cygwin分发; select他们的版本的Python(恰好是2.5),当机会出现。 WinXP – > VM,例如Sun的Virtual Box – > Linux – >完整的Python安装(所有的子目录等等):这些对我来说是新的,我只是在阅读它们。 我有一个大问题,主机和虚拟操作系统是否共享访问某些(所有?)文件系统。 […]

是否有解决urllib2.urlopen的“权限被拒绝”的错误?

我正在运行一些使用urllib2.urlopen Python代码, urllib2.urlopen以用户( root (Linux)的身份运行时工作正常。 但是,当以用户apache运行(我们通过apache版本1运行)时,它不起作用 – 我得到这个错误: Traceback (most recent call last): File "/srv/www/vm/custom/ipn.py", line 118, in ? a = confirm_paypal(f, f1) File "/srv/www/vm/custom/ipn.py", line 47, in confirm_paypal response = urllib2.urlopen(PP_URL, params) File "/usr/lib64/python2.4/urllib2.py", line 130, in urlopen return _opener.open(url, data) File "/usr/lib64/python2.4/urllib2.py", line 358, in open response = self._open(req, data) File "/usr/lib64/python2.4/urllib2.py", line […]

从远程FTP服务器删除X天以前的文件

我的备份存储在远程FTP服务器上。 我正在寻找一种通用的方法来清理FTP目录使用bash或python。 任何帮助,将不胜感激。 编辑:我只有FTP访问服务器。 我需要通过FTP远程login来清理目录