针对如何在WSGIapache上为Django执行多个处理?和apachewsgidjango这两个问题,本篇文章进行了详细的解答,同时本文还将给你拓展apache+wsgi+django时Proce
针对如何在WSGI apache上为Django执行多个处理?和apache wsgi django这两个问题,本篇文章进行了详细的解答,同时本文还将给你拓展apache + wsgi + django时Process问题、Apache / Windows / mod_wsgi上的多个django站点 – win32的问题、Apache Django Mod_Wsgi – 自动重载、Apache Wsgi virtualHost,Django virtual env“no module named django.core.wsgi”等相关知识,希望可以帮助到你。
本文目录一览:- 如何在WSGI apache上为Django执行多个处理?(apache wsgi django)
- apache + wsgi + django时Process问题
- Apache / Windows / mod_wsgi上的多个django站点 – win32的问题
- Apache Django Mod_Wsgi – 自动重载
- Apache Wsgi virtualHost,Django virtual env“no module named django.core.wsgi”
如何在WSGI apache上为Django执行多个处理?(apache wsgi django)
我的朋友说Django只有1个线程之类的东西?
并且我必须编辑我的000默认值以添加更多进程?他建议4或5。
这到底是什么,我该怎么办?
谢谢,我是菜鸟。
答案1
小编典典使用WSGIDaemonProcess
指令将应用程序置于守护程序模式,并指定守护程序进程和线程数。
apache + wsgi + django时Process问题
如图, 当我试用python manage.py runserver启动时, 调用test1,会执行test2生成文件,
但是试用apache + wsgi + django部署的时候调用test1时, test2不执行,直接返回33
哪位大神知道怎么回事
Apache / Windows / mod_wsgi上的多个django站点 – win32的问题
我有两个Django网站使用相同的数据库,并共享一些代码。 主父网站是员工和承包商的外联网,而第二个网站则向我们的一些合作伙伴公开了一些数据。
我设法build立了网站,但发现如果我启动Apache并进入主站点,那么合作伙伴网站将无法工作,返回“内部服务器错误”。 如果我重新启动并进入合作伙伴网站,那么主网站将无法工作。
所以我猜他们在资源上是相互冲突的。
服务器日志(见底部)显示,这是一个问题,在114行win32 / lib / pywintypes.py模块。另外,build议注释掉这些行(见下文)。 所以我试过这个,它的工作原理。
pipe理多个settings.py文件
Docker中的Apache说:不允许使用符号链接
系统时间不同于Apache的时间戳 – ?
脚本在Windows Server 2003上工作,但在Windows Server 2012上返回错误0x8007000e
在htaccess文件中使用RewriteMap
我真的不明白代码中究竟发生了什么,是否将它评论出来会在稍后引起我的问题。 所以问题是:
还有什么可能导致这个? 这个软糖是“安全”吗?
# py2k and py3k differences: # On py2k,after doing "imp.load_module(''pywintypes'')",sys.modules # is unchanged - ie,sys.modules[''pywintypes''] still refers to *this* # .py module - but the module''s __dict__ has *already* need updated # with the new module''s contents. # However,on py3k,sys.modules *is* changed - sys.modules[''pywintypes''] # will be changed to the new module object. # SO: * on py2k don''t need to update any globals. # * on py3k we update our module dict with the new module''s dict and # copy its globals to ours. old_mod = sys.modules[modname] # Python can load the module mod = imp.load_dynamic(modname,found) # Check the sys.modules[] behavIoUr we describe above is true... if sys.version_info < (3,0): #The fudge bit !!!!!!!!!!!!!!!!! #assert sys.modules[modname] is old_mod #assert mod is old_mod pass else: assert sys.modules[modname] is not old_mod assert sys.modules[modname] is mod # as above - re-reset to the *old* module object then update globs. sys.modules[modname] = old_mod globs.update(mod.__dict__)
追溯
mod_wsgi (pid=7164): Exception occurred processing Wsgi script ''E:/Programming/django_site/extranet_site/apache/django.wsgi''. Traceback (most recent call last): File "C:\Python26\lib\site-packages\django\core\handlers\wsgi.py",line 241,in __call__ response = self.get_response(request) File "C:\Python26\lib\site-packages\django\core\handlers\base.py",line 73,in get_response response = middleware_method(request) ile "C:\Python26\lib\site-packages\django\contrib\sessions\middleware.py",line 10,in process_request engine = import_module(settings.SESSION_ENGINE) File "C:\Python26\lib\site-packages\django\utils\importlib.py",line 35,in import_module __import__(name) File "C:\Python26\lib\site-packages\django\contrib\sessions\backends\db.py",line 2,in <module> from django.contrib.sessions.models import Session File "C:\Python26\lib\site-packages\django\contrib\sessions\models.py",line 4,in <module> from django.db import models File "C:\Python26\lib\site-packages\django\db\models\__init__.py",line 12,in <module> from django.db.models.fields.files import FileField,ImageField File "C:\Python26\lib\site-packages\django\db\models\fields\files.py",line 8,in <module> from django.core.files.storage import default_storage File "C:\Python26\lib\site-packages\django\core\files\storage.py",line 7,in <module> from django.core.files import locks,File File "C:\Python26\lib\site-packages\django\core\files\locks.py",line 25,in <module> import pywintypes File "C:\Python26\lib\site-packages\win32\lib\pywintypes.py",line 124,in <module> __import_pywin32_system_module__("pywintypes",globals()) File "C:\Python26\lib\site-packages\win32\lib\pywintypes.py",line 114,in __import_pywin32_system_module__ assert sys.modules[modname is old_mod AssertionError
在Apache服务器上导入pandas导致超时错误
在Ubuntu Linux的PHPinfo中缺lessMysqL
如何使用.htaccess重新编写URL
同一域(本地主机)上的XHR跨域错误
2个Bitnami Django项目同时运行Apache Wsgi
安装pywin32#212解决了这个问题。
它在删除pywin32和使用WsgiScriptAlias“/别名”“c:/wamp/www/project/django.wsgi”之后为我工作在httpd.config中也使用了第一个参数的引号。
我在版本217上遇到了这个问题,但是我需要pywin32。 从这里实施修复https://stackoverflow.com/a/10928148/80516似乎工作。
错误报告,但没有解决:
https://sourceforge.net/tracker/?func=detail&aid=2905909&group_id=78018&atid=551954
临时解决方案在win32 / lib / pywintypes.py中注释掉两行:
if sys.version_info < (3,0): #next two lines are problematic!!!!! #assert sys.modules[modname] is old_mod #assert mod is old_mod pass else: assert sys.modules[modname] is not old_mod assert sys.modules[modname] is mod # as above - re-reset to the *old* module object then update globs. sys.modules[modname] = old_mod globs.update(mod.__dict__)
我有这个相同的问题(使用Python 2.7,Django 1.4.1,Apache 2.2,mod_wsgi 3.3),并通过删除pywin32(ver.217)来解决它。 Django试图从pywin32导入,但似乎并不需要它。 如果你需要Django站点中的pywin32,这不是你的答案,但我只是安装它,并没有使用它。
编辑:我实际上是使用virtualenv为我的网站,但我的主要Python泄漏英寸如果你确实需要pywin32在一些事情,然后使用virtualenv,并阅读这个wiki页在mod_wsgi和虚拟环境:
虚拟环境 – mod_wsgi
只有在httpd.conf中添加引号(正如kiran.gilvaz所建议的)在我的情况下足以解决问题。 我没有删除pywin32(pywin32是版本218)。
总结
以上是小编为你收集整理的Apache / Windows / mod_wsgi上的多个django站点 – win32的问题全部内容。
如果觉得小编网站内容还不错,欢迎将小编网站推荐给好友。
Apache Django Mod_Wsgi – 自动重载
我试图自动重新加载我的本地Windows机器上使用Apache + mod_wsgi的Django应用程序。
我想知道我在哪里添加下面的文章中引用的代码:
http://code.google.com/p/modwsgi/wiki/ReloadingSourceCode
def _restart(path): _queue.put(True) prefix = ''monitor (pid=%d):'' % os.getpid() print >> sys.stderr,''%s Change detected to ''%s''.'' % (prefix,path) print >> sys.stderr,''%s Triggering Apache restart.'' % prefix import ctypes ctypes.windll.libhttpd.ap_signal_parent(1)
如何在Apacheasynchronous客户端中configuration允许的挂起请求数量
无法导入/没有名为与Django错误的模块
node.js与Apache PHP一起运行?
如何htaccessredirect这个长的url?
multipartentity不能被parsing为一个types
Windows生产服务器上的Drupal 7和wordpress 3.8?
404未find在此服务器上未find请求的URL
没有findAndroid库
www将301redirect到使用httpd.conf的非www的语法
我试图在Windows 7 x64上构buildApache Hadoop 2.5.0,但是我仍然遇到未知的错误
读:
http://blog.dscpl.com.au/2008/12/using-modwsgi-when-developing-django.html
它告诉你在使用Django的时候文件的放置位置。 您只需要在与Windows相关的源代码重新加载文档部分中更改每个人都指出的代码。 另请阅读:
http://blog.dscpl.com.au/2009/02/source-code-reloading-with-modwsgi-on.html
这解释了与Windows相关的第一个变体。
您替换同一篇文章中上面的代码块中提到的重新启动函数。
您可以在您在页面上找到的以下代码块中替换重新启动功能:
Monitoring For Code Changes The use of signals to restart a daemon process Could also be employed in a mechanism which automatically detects changes to any Python modules or dependent files. This Could be achieved by creating a thread at startup which periodically looks to see if file timestamps have changed and trigger a restart if they have. Example code for such an automatic restart mechanism which is compatible with how mod_wsgi works is shown below. import os import sys import time import signal import threading import atexit import Queue _interval = 1.0 _times = {} _files = [] _running = False _queue = Queue.Queue() _lock = threading.Lock() def _restart(path): _queue.put(True) prefix = ''monitor (pid=%d):'' % os.getpid() print >> sys.stderr,''%s Triggering process restart.'' % prefix os.kill(os.getpid(),signal.SIGINT)
我在我的服务器上使用这个代码
touch site.wsgi
它的工作。 在浏览器重新加载页面后,我得到页面的变化。 可能是丑陋 – 但简单,没有必要重新启动Apache。
我使用Bitnami DjangoStack http://bitnami.org/stack/djangostack和安装在D: BitNami DjangoStack和C: Documents and Settings tsurahman BitNami DjangoStack projects myproject上的Windows XP作为项目目录(默认安装)
如在http://code.google.com/p/modwsgi/wiki/ReloadingSourceCode#Restarting_Apache_Processes中 ,我添加
MaxRequestsPerChild 1
在文件D: BitNami DjangoStack apps django conf django.conf中查看Graham Dumpleton的评论
然后我使用http://code.google.com/p/modwsgi/wiki/ReloadingSourceCode#Monitoring_For_Code_Changes中的内容在我的项目目录中创建了一个文件monitor.py ,并用http://code.google.com替换_restart方法/ p / modwsgi / wiki / ReloadingSourceCode#Restarting_Windows_Apache ,这里是脚本的一部分
.... _running = False _queue = Queue.Queue() _lock = threading.Lock() def _restart(path): _queue.put(True) prefix = ''monitor (pid=%d):'' % os.getpid() print >> sys.stderr,''%s Triggering Apache restart.'' % prefix import ctypes ctypes.windll.libhttpd.ap_signal_parent(1) def _modified(path): try: ....
并在文件D: BitNami DjangoStack apps django scripts django.wsgi中 ,
.... import django.core.handlers.wsgi import monitor monitor.start(interval=1.0) monitor.track(os.path.join(os.path.dirname(__file__),''site.cf'')) application = django.core.handlers.wsgi.WsgiHandler()
然后重新启动Apache服务器
总结
以上是小编为你收集整理的Apache Django Mod_Wsgi – 自动重载全部内容。
如果觉得小编网站内容还不错,欢迎将小编网站推荐给好友。
Apache Wsgi virtualHost,Django virtual env“no module named django.core.wsgi”
我见过很多与我的问题有关的消息,但没有答案可以摆脱我的“500服务器内部错误”,所以我尝试发布我的conf来获得帮助。
错误信息:
[客户端127.0.0.1:47873] AH01630:客户端被服务器configuration拒绝:/ home / www / waves /其他/
[Fri Jun 24 17:05:23.631568 2016] [:error] [pid 15186:tid 140715648984832] [''/home/marc/.virtualenvs/waves/lib/python2.7/site-packages'',''/ home / www / waves'',''/usr/local/lib/python2.7/dist-packages/setuptools-20.6.7-py2.7.egg'',''/usr/lib/python2.7'',''/ usr / lib / python2.7 / plat-x86_64-linux-gnu'',''/usr/lib/python2.7/lib-tk'',''/usr/lib/python2.7/lib-old'',''/ usr / lib / python2 .7 / lib-dynload'',''/usr/local/lib/python2.7/dist-packages'',''/usr/lib/python2.7/dist-packages'',''/usr/lib/python2.7/ dist-packages / PILcompat'',''/usr/lib/python2.7/dist-packages/gtk-2.0'',''/usr/lib/python2.7/dist-packages/ubuntu-sso-client'']
使用WAMP访问networking内的本地WordPress网站?
在.htaccess中需要一个特定的URL RewriteRule
PHP输出缓冲区不冲洗
我如何通过CGI接口调用我的C ++二进制文件?
Apache VirtualHost:如何ServerName一个不同于80的端口
[Fri Jun 24 17:05:23.631660 2016] [:error] [pid 15186:tid 140715648984832] [remote 127.0.0.1:50665] mod_wsgi(pid = 15186):目标Wsgi脚本''/ home / www / waves / waves / wsgi.py“不能作为python模块加载。
[Fri Jun 24 17:05:23.631675 2016] [:error] [pid 15186:tid 140715648984832] [remote 127.0.0.1:50665] mod_wsgi(pid = 15186):处理Wsgi脚本''/ home / www / waves / waves_services / wsgi.py”。
[Fri Jun 24 17:05:23.631686 2016] [:error] [pid 15186:tid 140715648984832] [remote 127.0.0.1:50665] Traceback(最近一次调用的最后一个):
[Fri Jun 24 17:05:23.631710 2016] [:error] [pid 15186:tid 140715648984832] [remote 127.0.0.1:50665]文件“/home/www/waves/waves_services/wsgi.py”,第18行,
[fri Jun 24 17:05:23.631731 2016] [:error] [pid 15186:tid 140715648984832] [remote 127.0.0.1:50665] from django.core.wsgi import get_wsgi_application
[Fri Jun 24 17:05:23.631743 2016] [:error] [pid 15186:tid 140715648984832] [remote 127.0.0.1:50665] ImportError:没有名为django.core.wsgi的模块
我的Django应用程序不加载在Apache的WSG模式,我尝试了许多解决scheme,但仍然无法正常工作。 这里是我的confs文件:虚拟主机:
<VirtualHost *:80> ServerName dev.www.waves.com ServerAlias www.waves.com ServerAdmin webmaster@waves.com DocumentRoot /home/www/waves Alias media/ /home/www/waves/media/ Alias static/ /home/www/waves/static/ <Directory /home/www/waves> Require all granted </Directory> <Directory /home/www/waves/staticfiles> Require all granted </Directory> <Directory /home/www/waves/media> Require all granted </Directory> WsgiDaemonProcess waves python-path=/home/marc/.virtualenvs/waves/lib/python2.7/site-packages:/home/www/waves WsgiProcessGroup waves WsgiScriptAlias /waves /home/www/waves/waves_services/wsgi.py <Directory /home/www/waves/waves_services> <Files wsgi.py> Require all granted </Files> </Directory> <Directory /home/marc/.virtualenvs/waves/lib/python2.7/> Require all granted </Directory>
我的wsgy.py内容:
from __future__ import unicode_literals import os import sys import site print sys.path from django.core.wsgi import get_wsgi_application os.environ.setdefault("DJANGO_SETTINGS_MODULE","waves_services.settings.production") application = get_wsgi_application()
我追溯到Apache错误日志sys.path内容和sys.path中的virtualenv。 Django安装在这个virtualenv(我第一次尝试全局安装django'',但错误只是移动到我的设置文件中包含的第一个''特定于应用程序的''import:environ虚拟env是使用virtualenvwrapper(任何影响? )
我试着改变virtualenv文件的所有权,改变了“执行”标志,但我仍然得到这个… 500服务器错误。
我会很感激得到发生的事情的线索! thanxs
更改apache(xampp)中的web根目录
禁止您无权访问此服务器。 Centos 6 / Laravel 4
在mod_wsgi上部署django应用程序的问题
htaccessurl重写不工作
在Linux中使用PHP的posix_kill()导致奇怪的行为
几件事情来检查。
确保virtualenv有django( pip freeze | grep django )
检查apache用户是否可以通过检查文件夹权限来访问virtualenv
如果你使用的是Apache 2.4+,请更改以下内容
Order deny,allow Allow from all
至
Require all granted
编辑建议由@marcoooo(OP) :不要把virtualenv基地目录下的任何家庭目录没有“X”标志,Apache万维网数据用户将无法激活virtualenv ….许多thanxs为了他的帮助,拯救了我的一天(夜间)
总结
以上是小编为你收集整理的Apache Wsgi virtualHost,Django virtual env“no module named django.core.wsgi”全部内容。
如果觉得小编网站内容还不错,欢迎将小编网站推荐给好友。
今天关于如何在WSGI apache上为Django执行多个处理?和apache wsgi django的讲解已经结束,谢谢您的阅读,如果想了解更多关于apache + wsgi + django时Process问题、Apache / Windows / mod_wsgi上的多个django站点 – win32的问题、Apache Django Mod_Wsgi – 自动重载、Apache Wsgi virtualHost,Django virtual env“no module named django.core.wsgi”的相关知识,请在本站搜索。
本文标签: