Articles of httpd

服务器最大限度地连接和RAM

我们专门在GoDaddy上运行一个WordPress博客。 看来,每当我们得到大量的并发用户(大约100),该网站宕机。 根据GoDaddy的build议,我们一直在修复它的方法是运行service httpd start 。 以上是临时修复。 而且由于我们的stream量达到了大量的并发用户,httpd服务一直在下降。 我们也通过与GoDaddy聊天来解决这个问题: Server Concierge: Apache is maxing out your resources. As soon as I started Apache you went from 500 megs free of RAM to 0 free. Server Concierge: Currently it appears that you have over 500 connections to the server at the same time. Server Concierge: The […]

如何从Apache的基本authentication中排除特定的URL?

两种情况: 目录 我想我的整个服务器被密码保护,所以我包括这个目录configuration在我的sites-enabled/000-default : <Directory /> Options FollowSymLinks AllowOverride None AuthType Basic AuthName "Restricted Files" AuthUserFile /etc/apache2/passwords Require user someuser </Directory> 问题是我如何从这个排除特定的url? 代理 我发现上面的密码保护不适用于mod_proxy,所以我把它添加到我的proxy.conf : <Proxy *> Order deny,allow Allow from all AuthType Basic AuthName "Restricted Files" AuthUserFile /etc/apache2/passwords Require user someuser </Proxy> 如何从密码保护中排除特定的代理URL? 我尝试添加一个新的细分: <Proxy http://myspecific.url/> AuthType None </Proxy> 但是这并没有什么窍门。

在我的Centos 5.x Linux上安装哪个版本的Apache

我看到Apache.org网站上有两个不同的版本。 一个是httpd_2.4.1,另一个是httpd_2.2.22,都是最新版本。 任何人有一个想法? 谢谢!! E.

如何查看哪个Web应用程序正在消耗资源

我在某种程度上是sysAdmin的新手。 我有一个专用服务器@Mediatemple,他们不支持我在这个问题上。 到目前为止,我有一个MySQL昂贵的查询问题,我find了一种方法来确定哪个PHP应用程序正在查询我们不需要的大量数据。 我现在的问题是,我可以做一个“ PS辅助 ”,我可以看到一个“ httpd ”服务比其他人更耗费CPU和内存 ,但我找不出哪个虚拟主机或应用程序正在做这件事。 那么有没有办法从HTTPD过程中找出哪个应用程序正在造成这种情况。 PS我们的操作系统是带有Apache2和PHP5的CentOS 5.x。

NameVirtualHost 2个IP和3个DocumentRoot上的不良行为

我有下一个Apache虚拟主机和NameVirtualHost设置: NameVirtualHost 10.100.106.89 <VirtualHost 10.100.106.89> DocumentRoot /var/www/html/dev/novared_soporte/branches/v0.3/soporte ServerName 10.100.106.89 </VirtualHost> <VirtualHost 10.100.106.89> DocumentRoot /var/www/html/phpmyadmin ServerName 10.100.106.89/phpmyadmin ServerAlias 10.100.106.89/pma </VirtualHost> <VirtualHost 10.100.106.90> ServerName 10.100.106.90 DocumentRoot /var/www/html </VirtualHost> 当我试图达到: 10.100.106.89我可以到我需要的网站: /var/www/html/dev/novared_soporte/branches/v0.3/soporte 但是当我试图达到10.100.106.89/phpmyadmin我实际上得到error_log.txt(httpd日志)上的这个错误: [Thu Jun 28 12:12:59 2012] [error] [client 10.100.103.31] File does not exist: /var/www/html/dev/novared_soporte/branches/v0.3/soporte/phpmyadmin 我仍然不能得到错误的地方。 顺便说一句, 10.100.106.90正常工作,至less对于它的DocumentRoot /var/www/html

黑客/脚本kiddy活动和电子邮件的Grep / var / log?

CentOS 6 Apache服务器版本:Apache / 2.2.15(Unix) 考虑如何自动,每天一次,grep黑客,networking钓鱼等活动的所有日志/ var / log / httpd,并通过电子邮件发送给我自己,以便我可以评估我可能需要做的事情。 但是我能find的模式是什么? IE浏览器,我们不运行WordPress的,我们看到很多尝试访问WordPress的相关内容,显然是为了利用。 和PHPMyAdmin一样。 我可以重复做一些事情,匹配我们看到的常见模式。 # grep -r -i wp-content /var/log/httpd/ # grep -r -i php-my-admin /var/log/httpd/ 我如何通过电子邮件发送每个grep命令的结果,或者更好,所有的Grep结果都在一个电子邮件中?

在使用Apache版本httpd-2.2.3-31的Centos上启用/ server-status时出现错误消息

我在httpd.conf中启用了以下内容: ExtendedStatus On LoadModule status_module modules / mod_status.so 并且: NameVirtualHost *:80 <VirtualHost *:80> ServerName myserver.com ServerAlias myserver.com DocumentRoot /prod/html RewriteEngine on RewriteCond %{HTTP_HOST} .*myserver.com$ RewriteRule /(.*) http://myserver.com/$1 [R,L] **<Location /server-status> SetHandler server-status Order deny,allow Deny from all Allow from localhost </Location>** </VirtualHost> 当运行lynx http://localhost/server-status会得到以下消息: 您无权访问此服务器上的/ server-status。 我在/ etc / httpd文件夹中没有看到与/ server-status有关的任何内容,这些文件夹是我在/ etc / httpd下的文件夹: **conf […]

这个netstat输出是什么意思?

我在专用服务器上运行适度活跃的网站。 在防范(D)DOS攻击的过程中,我运行了netstat来获得活动连接的数量。 这产生了一个相当不寻常的结果,它显示了从服务器的公共IP地址的httpd端口到同一个IP地址上的许多不同的表面上随机的端口的1000多个连接。 也就是说,输出如下所示: Proto Recv-Q Send-Q Local Address Foreign Address State tcp 0 0 [server's ip]:60284 [server's ip]:80 TIME_WAIT tcp 0 0 [server's ip]:60267 [server's ip]:80 TIME_WAIT … [1000+ just like this] 这些状态是TIME_WAIT,但可能是因为我运行的防火墙不允许访问这些端口。 这台服务器确实与另一台机器上的数据库进行通信,但是这些都应该通过专用IP来完成。 所以如果这是有效的沟通,我想弄清楚,所以我可以将其设置为使用私有IP(其中端口可访问)。 有谁知道为什么机器会试图通过其公共IP进行自我沟通? 我将如何确定启动这个过程? 我试图通过lsof来查看这些端口,但是没有返回任何信息。 我们的服务器使用httpd运行的唯一不寻常的事情是过时的perl-perl程序(用于caching内存中的perl脚本)。 不过,我相当肯定,不会涉及networking的使用,也没有任何信息表明如何工作。 在此先感谢您的任何build议!

拒绝通过基于http头的htaccess访问网站

我一直在努力争取这个工作,我不能把我的手指。 我想要做的就是根据CloudFlare添加的CF-IPCountry头阻止访问一个国家的网站。 我认为htaccess是一个合适的方法来做到这一点。 我们正在DirectAdmin的控制面板上运行LiteSpeed 4.2.4。 我们遇到的问题是htaccess规则似乎没有做任何事情。 这是我们尝试的规则: SetEnvIf CF-IPCountry AU UnwantedCountry=1 Order allow,deny Deny from env=UnwantedCountry Allow from all 这完全没有区别,连接仍然被接受。 只是为了检查规则是否至less正在被处理,我把Allow从All改为Deny,连接都被拒绝了。 所以这个variables似乎是一个问题。 这是与请求相关的相关头文件。 Connection: Keep-Alive Accept-Encoding: gzip CF-Connecting-IP: xx.xx.xx.xx CF-IPCountry: AU X-Forwarded-For: xx.xx.xx.xx.xx CF-RAY: c9062956e2d04b6 X-Forwarded-Proto: http CF-Visitor: {"scheme":"http"} Zone-Name: xx.com.au 希望有人能帮助我,这已经让我疯狂了太久。 谢谢 更新 现在我已经通过将RewriteLogLevel 9添加到虚拟主机来启用重写日志logging。 最初我用我所有其他的htaccess规则进行了testing,这些规则对于这个站点来说相当广泛,我可以看到所有的匹配都被logging下来,所以我知道日志logging是正确的。 为了testing这种情况,我将htaccess剥离为裸露的骨头,所以我在我的htaccess中有以下内容: SetEnvIf CF-IPCountry AU UnwantedCountry=1 Order allow,deny Deny […]

通过https服务图像内容,必须使encryption强度与主网站的encryption强度相匹配吗?

我正在看我的网站迁移到整个HTTPS。 我有一个负责HTML / PHP的服务器,以及另外4台服务器提供图像内容 现在显然,所有的图像服务器都需要https来防止浏览器警告,但我想知道.. 是否有任何要求的图像服务器与主SSL网站的encryption强度相同? 还是足够的,他们通过https服务,无论密钥长度和select密码。 我无法在Google上发现任何确凿的结论,但无可否认,这是一个难以search的主题