我有一个Django的应用程序,可以使用标准的开发环境在本地运行。 现在我想把它移到EC2进行生产。 django文档build议使用apache和mod_wsgi运行,并使用nginx加载静态文件。 我在Ec2机器上运行Ubuntu 12.04。 我的Django应用程序“ddt”包含一个ddt.wsgi的子目录“apache” import os, sys apache_configuration= os.path.dirname(__file__) project = os.path.dirname(apache_configuration) workspace = os.path.dirname(project) sys.path.append(workspace) sys.path.append('/usr/lib/python2.7/site-packages/django/') sys.path.append('/home/jeffrey/www/ddt/') os.environ['DJANGO_SETTINGS_MODULE'] = 'ddt.settings' import django.core.handlers.wsgi application = django.core.handlers.wsgi.WSGIHandler() 我从apt安装了mod_wsgi。 我的apache / httpd.conf包含 NameVirtualHost *:8080 WSGIScriptAlias / /home/jeffrey/www/ddt/apache/ddt.wsgi WSGIPythonPath /home/jeffrey/www/ddt <Directory /home/jeffrey/www/ddt/apache/> <Files ddt.wsgi> Order deny,allow Allow from all </Files> </Directory> 在apache2 / sites-enabled下 <VirtualHost *:8080> […]
我拼命地试图通过使用git-http-backend的“智能-http”模式推动git工作。 然而经过几个小时的testing和故障排除之后,我依然留下了 error: Cannot access URL http://localhost/git/hello.git/, return code 22 fatal: git-http-push failed` 我正在使用最新版本的Ubuntu(12.04),Apache2(2.2.22)和Git(1.7.9.5),并遵循互联网上的不同教程,就像这个http://www.parallelsymmetry.com/howto/git .jsp 。 我的VHost文件目前看起来像这样: <VirtualHost *:80> SetEnv GIT_PROJECT_ROOT /var/www/git SetEnv GIT_HTTP_EXPORT_ALL SetEnv REMOTE_USER=$REDIRECT_REMOTE_USER DocumentRoot /var/www/git ScriptAliasMatch \ "(?x)^/(.*?)\.git/(HEAD | \ info/refs | \ objects/info/[^/]+ | \ git-(upload|receive)-pack)$" \ /usr/lib/git-core/git-http-backend/$1/$2 <Directory /var/www/git> Options +ExecCGI +SymLinksIfOwnerMatch -MultiViews AllowOverride None Order allow,deny allow from all […]
我想知道有多less浏览器在向我们的networking服务器发送HTTP请求时会拒绝我们的SSL证书。 我们正在使用一个免费的CA,现在似乎已经被大多数现代浏览器所认可,但是我希望获得一些数字,而不是详尽地testing浏览器和操作系统的组合。 我知道浏览器在证书validation失败时会终止连接,那么Apache有没有办法检测到这个? 我不希望得到具体的诊断信息 – 只是有证书/ SSL问题就足够了。
我有一个网站需要根据IP地址阻止某个国家。 我很清楚,基于IP的阻止并不是一种阻止访问者的万无一失的方法,但这是朝正确方向迈出的必要一步。 由于我使用PHP,我要做的是使用像geoplugin.net这样的GeoIP数据库。 不过,我很想知道是否有更好的方法。 该网站是在一个共享的networking服务器上(我没有root权限),它在centOS上运行Apache。 我想我的问题是“一个.htaccess文件可以configuration为阻止通过IP使用外部来源查找IP地址。
首先我知道这个variables: _SERVER["SERVER_SOFTWARE"] 在我的一个应用程序中,我想从PHP脚本检查它运行的是哪个web服务器。 基本上这将是一个wordpress插件,这将有助于博主调整一些configuration。 我为Apache&Nginx创build了独立的进程,并且正在考虑将代码发布为2个不同的WordPress插件。 然后,我只是好奇,知道在PHP中是否有一个FULLPROOF方法来完美地检测Web服务器。 请考虑所有情况:: Apache,Nginx,Apache + Nginx,PHP作为Apache模块,PHP使用fastcgi,php-fpm,lighttpd,IIS等。 此外,它对我的应用程序来检测组合和代理的存在至关重要。 谢谢, -Rahul
我在这里有一个Apache的问题。 对于我作为开发人员的整个职业生涯,我已经像这样重新启动了Apache: sudo /etc/init.d/apache2 restart 我今天刚刚部署了我的第一个Rails应用程序,但是我很难让Apache在主机上重新启动。 当我尝试这种方式,Apache会尝试重新启动,但最终会挂起。 但是,这工作得很好: sudo apachectl restart 这两种技术有什么区别? 我认为后者最好是第一个“语法糖”,但是事实肯定不是这样,因为后者是在前者没有的情况下工作的。 如果它是相关的(我怀疑它可能),这个Rails应用程序使用Phusion Passenger。 我以前的开发经验(以前的方法工作正常)主要是用PHP。 我很新的Rails。 有问题的服务器运行Ubuntu 11.04(Natty)。
我正在寻找像使用Heartbeat / Squid / Varnish / etc等来平衡内部apache实例之间的传入stream量。 这必须是软件,而不是硬件,因为我所有的东西都运行在VPS上。 我在这个领域没有太多的经验,所以如果我滥用术语,选错了软件包,我会感到抱歉。 我已经绘制了一些东西来说明我所追求的。 绿色的一面是初始设置的样子,蓝色的一面是增加更多的Apache实例后,由于stream量增加可能看起来像什么。 这可能不是如何工作,但理想情况下,我会将平衡器的IP添加到域的DNS。 然后平衡器会看到每个apache实例上有多less个连接(通过内部IP或永久IP的某个configuration列表),并平均分配连接。 在蓝色有第二个平衡器,因为我相信在某些时候平衡器也需要帮助。 也许我正在讨论这个错误,但是我正在寻找关于“平衡器”应该是什么的帮助以及如何设置它们的最佳实践。 任何帮助将是伟大的。
我需要确定服务器(Apache 2)是否返回页面的全部内容及其正确的页眉。 我有一个成功执行的PHP脚本,但浏览器只获得了一半的HTML内容,它只是被切断。 客户端基础设施非常复杂,使用Novell BorderManager Proxys和东西。 为了确保服务器正常工作,我想logging响应的标题和正文。 我怎样才能做到这一点? 我查看了apache的mod_log_config模块(已经安装好了,可以使用),但是说实话我没有把它configuration成在某个地方输出header和body。 编辑:我设法logging头 LogFormat "%h %l %u %t \"%r\" %>s %b \"%{HEADER_NAME}o\"" common2 CustomLog /var/log/apache2/response.log common2 但不幸的是, mod_log_config格式不支持整个内容主体。 更新:我弄脏了mod_dumpio这似乎是做到这一点,但我不能得到它的工作到目前为止:-( 谁能帮忙?
目前我们的服务器有一些问题,间歇性地,我们似乎得到了只运行和运行的apache进程,占用了100%的CPU。 运行顶部时,我们看到以下内容: PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 20788 www-data 20 0 318m 18m 3984 R 100 0.0 40:29.21 /usr/sbin/apache2 -k start 23523 www-data 20 0 319m 20m 4684 R 100 0.0 4:12.36 /usr/sbin/apache2 -k start 我想试着找出脚本(或其它什么)引起的,所以我试着: strace -p 20788 但是这并没有显示任何输出(我已经离开了大约10分钟,而什么也没有显示)。 根据我的理解,这可能意味着它陷入了一个无限循环,并没有任何“系统调用”显示。 还有什么我可以做,以显示发生了什么事? 谢谢 编辑 –忘了提及,这是一个有几百个用户在任何时间的活服务器! 所以我不能自由尝试更改configuration选项并重新启动Apache。 编辑2 – […]
当我在我的网站上运行ab时,我收到了很多回应: SSL read failed – closing connection SSL read failed – closing connection SSL read failed – closing connection 有些时候它是成功的。 我在MacBook Pro 10.7.2上。 奇怪的是,有人在一台非常类似的机器上做了相同的testing,而不是OS Lion,就在我旁边,没有任何问题。 有任何想法吗? 我确信这是我的机器上的东西,因为我得到ab在各地工作。 该命令很简单: ab -c 100 -n 1000 https://mywebsite.com 还有一件事,当我查看nginx日志时,我看到一些来自ab的请求,所以它正在工作。 而且,日志不会显示失败的日志。