我希望使用Flower(https://github.com/mher/flower)来监控我的Celery任务,而不是django-admin在他们的文档中建议(http://docs.celeryproject.org/en/latest) /userguide/monitoring.html#flower-real-time-celery-web-monitor).但是,因为我是新手,所以我对Flower的页面仅基于HTTP而不是HTTPS的方式感到有些困惑.如何为我的Celery任务启用安全性,以便任何旧用户都无法访问无需登录的网站http://flowerserver.com:5555并进行更改?
我已经考虑了Celery 自己的文档,但遗憾的是,没有提到如何保护Flower的api或web ui.它说:[Need more text here]
谢谢!
更新:我的问题部分与此处重复:如何向Django Celery Flower Monitoring添加身份验证和端点?
但是,我在这里通过询问如何在同一个远程机器上使用包含nginx,gunicorn和celery的环境来运行它来澄清他的问题.我也想知道如何设置Flower的外部可访问网址,但是如果可能的话,也更喜欢https而不是http(或某种方式保护webui并远程访问它).我还需要知道,对于任何可能获得Flower内部API访问权限的人来说,离开Flower运行是否存在相当大的安全风险,以及确保实现这一目标的最佳方式是什么,或者它是否应该完全禁用并仅用于as-需要的基础.
我在远程服务器上安装证书,并希望在覆盖它们之前检查它们是否存在.服务器仅允许通过ssh公钥进行非root访问.我可以sudo -s
在shell中root一次.Root是必需的,因为/ etc/ssl不被其他任何人读取.这是在开发中的python fabric
,因此任何可以在shell命令中运行的命令sudo
都可以工作.在这种情况下,我不介意在提示时输入密码.
TL; DR:我需要一个sh
命令,告诉我的python程序在运行时if fabric.sudo(sh_command) == True:
(或类似的东西)是否存在远程文件(或目录).
谢谢!
我刚刚升级了我的应用程序,ember 2.1
并在我的Web浏览器控制台中收到此错误:
Uncaught TypeError: this.transitionTo is not a function
Run Code Online (Sandbox Code Playgroud)
在我的网址中,我有一个名为的变量direction
:
http://localhost:4200/plates/new?direction=plates
Run Code Online (Sandbox Code Playgroud)
然后我将它构建到我的控制器中:
export default Ember.Controller.extend({
queryParams: ['direction'],
direction: null,
actions: {
lastpage(){
this.transitionTo(this.get('direction'));
},
save(...){
},
},
});
Run Code Online (Sandbox Code Playgroud)
这曾经在升级之前工作.什么折旧/如何解决此错误?
新的 Python 程序员在这里并试图学习如何动态更新小部件。首先,我有以下代码。我想要做的是将我的变量“self.dynamiclength”更改为任何整数,并让 WxPython 适当地更新小部件的数量。在更新 self.dynamiclength 后,我尝试将 self.Refresh() 和 self.Update() 放入我的 TestFrame 中,但无济于事。
在寻求帮助之前,我已经尽可能多地阅读了这方面的内容,但我在 Wx 太新了,无法自己解决这个问题。非常感谢!
import wx
import wx.lib.scrolledpanel as scrolled
class TestFrame(wx.Frame):
def __init__(self):
wx.Frame.__init__(self, None, size=(1000, 550))
panel = wx.Panel(self)
mainSizer = wx.BoxSizer(wx.VERTICAL)
pbox0 = wx.BoxSizer(wx.VERTICAL)
controlback0 = wx.Button(panel, label="Back0")
controlforward0 = wx.Button(panel, label="Forward0")
pbox0.Add(controlback0, 0, wx.ALL)
pbox0.Add(controlforward0, 0, wx.ALL)
mainSizer.Add(pbox0)
self.scrolling_window = scrolled.ScrolledPanel( panel )
self.scrolling_window.SetAutoLayout(1)
self.scrolling_window.SetupScrolling()
self.sizer = wx.BoxSizer( wx.VERTICAL )
self.child_windows = []
##############################################
#this is the variable that I want to change,
#and …
Run Code Online (Sandbox Code Playgroud) 我的问题相当简单:我是否必须停用虚拟环境 (virtualenv) 才能使用 Git?git commit
如果我决定在 virtualenv 中运行类似的东西,以后是否会产生任何负面影响?
谢谢。
我正在使用Fabric进行自动化,包括创建目录的任务.这是我的fabfile.py:
#!/usr/bin/env python
from fabric.api import *
def init():
try:
local('mkdir ./www')
except ##what exception?##:
#print exception name to put in above
Run Code Online (Sandbox Code Playgroud)
运行fab fabfile.py
和f我已经./www
创建了一个错误,但我不知道是什么类型,所以我不知道如何处理错误.Fabric仅打印出以下内容:
mkdir: cannot create directory ‘./www’: File exists
Fatal error: local() encountered an error (return code 1) while executing 'mkdir ./www'
Aborting.
Run Code Online (Sandbox Code Playgroud)
我想要做的是能够找出错误类型,以便我可以正确地除了我的错误没有一揽子陈述.如果答案不只是告诉我如何处理mkdir
异常,而是打印(或以其他方式找到名称)我可能遇到的任何异常(mkdir只是一个例子),这将非常有用.
谢谢!
我有一台标准的 ubuntu 14.04 机器。我每天在用户下使用它mh00h
。我有兴趣使用这台机器作为生产服务器。如何管理 Django 和 Nginx 的文件权限?
Nginx 当前配置为在www-data:www-data
. 这最大限度地降低了机器其余部分受到损害的风险。Django/gunicorn 同样应该在mh00h
. 但是gunicorn实际上应该在什么用户下运行?nobody
, 正确的?
下一步:我将所有的 Web 开发文件存储在/home/mh00h/development
. 归mh00h
. /home/mh00h/development/project1 (plus all dir/files but /media and /static)
? 归mh00h
. 我遵循 django two-scoops 最佳实践来创建一个包含静态文件的项目目录。当然,Nginx 现在无法访问,/home/mh00h/development/project1/project1/static
因为所有这些父目录都归 拥有mh00h
,而不是www-data
(./static
归 拥有www-data
)。
更复杂的是,virtualenvwrapper 在/home/mh00h/.virtualenvs/
.
我很犹豫要不要从两个 scoop 的最佳实践中/static
分离出来并分别存储在/var/www
. 另外,如果我将自己与两勺的做法进行比较,这会让我感到混乱。
我正在尝试按照本教程让 tinymce 与 django 和 zinnia 一起工作。它不起作用,所以我试图进行“测试”,但在运行django-admin.py syncdb
. 我该如何解决?
$django-admin.py syncdb
Traceback (most recent call last):
File "/usr/local/bin/django-admin.py", line 5, in <module>
pkg_resources.run_script('Django==1.5.1', 'django-admin.py')
File "/usr/lib/python2.7/dist-packages/pkg_resources.py", line 505, in run_script
self.require(requires)[0].run_script(script_name, ns)
File "/usr/lib/python2.7/dist-packages/pkg_resources.py", line 1245, in run_script
execfile(script_filename, namespace, namespace)
File "/usr/local/lib/python2.7/dist-packages/Django-1.5.1-py2.7.egg/EGG-INFO/scripts/django-admin.py", line 5, in <module>
management.execute_from_command_line()
File "/usr/local/lib/python2.7/dist-packages/Django-1.5.1-py2.7.egg/django/core/management/__init__.py", line 453, in execute_from_command_line
utility.execute()
File "/usr/local/lib/python2.7/dist-packages/Django-1.5.1-py2.7.egg/django/core/management/__init__.py", line 392, in execute
self.fetch_command(subcommand).run_from_argv(self.argv)
File "/usr/local/lib/python2.7/dist-packages/Django-1.5.1-py2.7.egg/django/core/management/__init__.py", line 263, in fetch_command
app_name = get_commands()[subcommand]
File "/usr/local/lib/python2.7/dist-packages/Django-1.5.1-py2.7.egg/django/core/management/__init__.py", line 109, in …
Run Code Online (Sandbox Code Playgroud) 我有一堆不同数字的代码,偶尔会插入一个字母来表示我数据的不同修饰符.这是一个示例代码:"01a-09B".我想做的是:
从上面的代码中提取数字范围
知道字母"A"或"B"是否附加到一个数字上(即[[1,"a"],[9,"b"]]
我试图使用python的Re包来做到这一点.我的代码如下:
>>>> print re.match(r'\D','01a-09B',re.M)
None
Run Code Online (Sandbox Code Playgroud)
问题是我无法将非数字字符与此代码匹配; 我None
回来了.
感谢大家.
我正在尝试从许多不同类型的图像(JPG、PNG 等)中提取 EXIF 和 XML 数据。我正在定义一个image
在我的models.py
文件中命名的类,如下所示:
class image(models.Model):
image = models.ImageField(upload_to='directory/')
title = models.CharField(max_length=60, blank=True, help_text="Descriptive image title")
meta = #?
Run Code Online (Sandbox Code Playgroud)
如何提取元数据并将元数据包含在我的模型中?
我正在努力遵循ember 2.0的文档删除记录,然后重定向到新的URL.当我尝试时,我得到以下错误到控制台:
Error while processing route: pencils Attempted to handle event `pushedData` on <name-emberjs@model:pencil::ember523:null> while in state root.deleted.inFlight. Error: Attempted to handle event `pushedData` on <name-emberjs@model:pencil::ember523:null> while in state root.deleted.inFlight.
Run Code Online (Sandbox Code Playgroud)
我的文件如下.
路线:
import Ember from 'ember';
import config from './config/environment';
var Router = Ember.Router.extend({
location: config.locationType
});
Router.map(function() {
this.resource('pencilview', { path: '/pencils/:pencil_id' });
this.resource('pencilcreate', { path: '/pencils/new' });
this.resource('pencils');
});
export default Router;
import Ember from 'ember';
import config from './config/environment';
var Router = Ember.Router.extend({
location: config.locationType …
Run Code Online (Sandbox Code Playgroud)