Articles of apache 2.2

支持POST的HTTPcaching服务器

我正在托pipe一个正在发送适当的caching控制标题的REST服务。 我使用Varnish作为Web服务器前面的caching服务器。 但是,清漆的限制是它不支持cachingHTTP POST和HTTP PUT。 有没有其他caching服务器可以caching这些请求? 我知道,cachingPOST是有点棘手,因为你不能只是caching基于URL作为一个关键像GET; 它需要实际检查请求主体。 在multipart/form-data请求的情况下,caching请求体的大小应该是有限制的(这样大file upload等不会被caching)。 不过,我真的希望能够caching简短的HTTP POST,或者至less是application/x-www-form-urlencoded 。

从Web服务器中启用Cookie

我已经对我的用户令牌进行了一些修改,当前的会话cookie使服务器redirect请求“永远不会完成”。 诀窍是delog / relog,或等待会话cookie到期。 但是这不是真的“用户友好”…. 有没有一种方法/命令从Web服务器(Apache2)过期现有的cookie?

什么阻止了Apache用户进行出站连接?

curl http://example.com 数据检索正常 sudo -u apache curl http://example.com 20秒后 curl: (7) couldn't connect to host 什么会造成这种情况,我该如何改变它? 我正在运行一些代码作为Apache(主要是由于文件权限),该代码需要能够连接到另一台服务器。 基于另一个问题( 阻止传出连接的证书uid(root,apache,nobody) )我想也许答案是在/ etc / iptables中,但该文件不使用-m owner: # Firewall configuration written by system-config-firewall # Manual customization of this file is not recommended. *filter :INPUT ACCEPT [0:0] :FORWARD ACCEPT [0:0] :OUTPUT ACCEPT [0:0] -A INPUT -m state –state NEW […]

configurationhttpd.conf接受1,000个连接 – 如何

我想编辑我的httpd.conf来接受最多1000个客户端连接。 这是我现在所拥有的: StartServers 8 MinSpareServers 5 MaxSpareServers 20 ServerLimit 256 MaxClients 256 MaxRequestsPerChild 4000 StartServers 2 MaxClients 150 MinSpareThreads 25 MaxSpareThreads 75 ThreadsPerChild 25 MaxRequestsPerChild 0 我应该如何编辑它?

Linux上的Apache2 – 如何追踪性能问题

我在这个话题上停留了一段时间:我怎样才能获得更多关于响应时间在哪里燃烧的细节。 我的问题是响应时间的极端变化。 有时需要服务器5或10秒或更长时间才能响应(尤其是第一个呼叫)。 萤火虫标志这次大多是“等待”。 当我检查本地主机/服务器状态(也出现这种延迟)时,大多数插槽被占用 – 但半秒后,他们又是免费的。 我很难想象有这么多的负载尖峰来解释这种行为。 另一个奇怪的事情:有100K JPG图像的请求,根据服务器状态 – 有时需要1,2,甚至10秒来执行(列Req)。 同时,包含一些CPU负载的PHP脚本在100 ms或更less的时间内处理(其他时间也需要1到2秒)。 其他(较小的)GIF或PNG图像的请求甚至以0毫秒的时间列出。 这是我卡住的地方:有没有什么办法看到需要10秒发送一个简单的JPG图像? 感谢您的好主意! – 系统:我正在讨论Debian Linux(Sequeeze)上的Apache 2networking服务器,它主要提供PHP脚本的页面和图像。 服务器在专业的德国服务器主机上的VPS上运行。 在服务器上没有内存交换(就我所知,从统计数据来看),CPU负载并不是特别高(正常运行时间报告的值在3左右,在极端负载下可以升到32左右 – 我认为应该是8 -CPU系统)。 当然,我永远不能确定服务器上的其他VPS是做什么的。 特殊设置:值得注意的是服务器通过SSL发送所有数据。 我进一步减less了保持活动时间到1秒,因为用户通常会花费很多时间在每个页面上(30-60秒),并且在获取图像之后保持这些连接活跃会快速耗尽服务器的内存(或2 GB我可以使用VPS)。 由于较大的PHP脚本,典型的线程占用20 MB的RAM。 因此只有50个支持保持活动的服务器插槽(MaxClient)。 材料:我创build了一个由服务器site24x7.com观察到的testing页面( https://www.soscisurvey.de/example/?debug&password=demo )(通常在1.4秒内发出响应,但是通常会有尖峰到达20或者30秒)。 为了交叉检查结果,我把它发送到Load Impact ES: http : //loadimpact.com/load-test/www.soscisurvey.de-35648bef3b84d3269e1fc7cb11bf1721

我忘了我的SSL密码,有什么build议?

我的服务器重新启动,而且Apache现在要求我input密码。 我不知道密码是什么,特别是考虑到我从来没有select密码。 有什么我可以做的吗? 我想象不知道如何删除它原来可能是不可能的。 我更多地要求下一步,我将不得不做的网站回到运行。

mod_jk去tomcat的多个虚拟主机

小configuration问题在这里。 我有一个像这样部署应用程序的Tomcat服务器 tomcat.mydomain.com:8080/app1 tomcat.mydomain.com:8080/app2 tomcat.mydomain.com:8080/app3 tomcat.mydomain.com:8080/app4 tomcat.mydomain.com:8080/app5 由于其他原因,我必须使用mod_jk将这些应用程序代理到以下URL myapp1.mydomain.com myapp2.mydomain.com myapp3.mydomain.com myapp4.mydomain.com www.completedifferentdomain.com 我一直在网上寻找想法如何configuration这个,但它看起来像我必须将个别应用程序映射到他们自己在tomcat的子域,然后代理到这些子域。 这是正确的,或者我可以做一些其他的方式。

加载php_mysql.dll时,apache崩溃

我试图让php_mysql工作。 我在一个Windows 7的盒子,用PHP 当我有;extension=php_mysql.dll注释掉,像这样,Apache的作品,PHP的作品,当然在后台的MySQL工作,但我不能用PHP与MySQL。 (我的目标是安装一个phpBB3论坛,并没有列出可用的mysql。) 现在我注意到的是,虽然PHP在Apache中工作(也就是说,它适当地提供了PHP页面),它在命令行上失败。 我不知道这是否相关,或者如果我只是从命令行做错了。 继续… 当我取消注释扩展行时,出现以下错误: Faulting application name: httpd.exe, version: 2.2.22.0, time stamp: 0x4f242d7a Faulting module name: php5ts.dll, version: 5.2.17.17, time stamp: 0x4d25fb49 Exception code: 0xc0000005 Fault offset: 0x000f424c Faulting process id: 0x1ba8 Faulting application start time: 0x01cd24b82c102b69 Faulting application path: C:\Program Files\Apache Software Foundation\Apache2.2\bin\httpd.exe Faulting module path: C:\php\php5ts.dll Report Id: […]

在使用passenger和apache的子目录中托piperails3应用程序时,视图图层中的相对path不正确

我想要使​​用子目录在多个服务器上托pipe多个Rails应用程序。 并遇到一些相对path问题。 我已经做了一个符号链接到应用程序的公共目录,并将其放置在/ var / www / html目录中, var/www/html/ /test_app (symbolic link to the public folder of test_app) 并设置为Apache LoadModule passenger_module /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.12/ext/apache2/mod_passenger.so PassengerRoot /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.12 PassengerRuby /usr/local/bin/ruby <VirtualHost *:80> ServerName test.com DocumentRoot /var/www/html Options Indexes FollowSymLinks -MultiViews RailsBaseURI /test_app </Location> </VirtualHost> 应用程序本身的链接工作正常,所有链接都承认test_app /目录并且工作,但是,在显示视图中的公用目录中的图像时,相对path出错。 说我有 /system/files/1/aaa.png 它正在寻找它 /var/www/html/system/files/1/aaa.png 而不是 /var/www/html/test_app/system/files/1/aaa.png 据我了解,这是一个Apache的设置问题,而不是在Rails中完成,如果可能的话,我宁愿将它包含在Apache的conf文件中,而不必更改代码。

我如何检查我正在运行的mod_passenger的版本?

我遇到了一个间歇性的错误与我的Ruby应用程序,我试图找出上下文。 我正在Apache上运行mod_passenger(在Dreamhost上,如果有的话)。 我得到的错误是: [ pid=12404 file=ext/apache2/Hooks.cpp:727 time=2012-04-30 02:59:02.949 ]: Unexpected error in mod_passenger: Could not send data to the ApplicationPool server: write() failed: Bad file descriptor (9) Backtrace: in 'virtual boost::shared_ptr<Passenger::Application::Session> Passenger::ApplicationPoolServer::Client::get(const Passenger::PoolOptions&)' (ApplicationPoolServer.h:402) in 'int Hooks::handleRequest(request_rec*)' (Hooks.cpp:523) (这就是我知道我正在运行mod_passenger。)我试图做一个gem list | grep passenger gem list | grep passenger ,但没有任何事情。 我可以在/dh/apache2/template/lib/modules看到这个模块,我只是不知道如何确定版本是什么。