Articles of apache 2.2

优化Apache服务器负载

我们有专门的服务器负载问题。 如果我正确理解cat / proc / cpuinfo输出,我们有16个处理器,4核@ 2.40GHz。 不幸的是,我没有获得免费的-m或vmstat。 但从顶部我得到,我们有24 GB。 以及关于进程的快照: 据我所知,内存是根本不使用的。 但是cpu被大量使用。 Apache消耗大部分CPU。 另一个有用的信息: 每1.0s:ps u -C httpd,mysqld,php Tue Mar 27 27:48:19 2012 USER PID%CPU%MEM VSZ RSS TTY STAT START TIME COMMAND 根7476 0.0 0.1 446808 37880? SN Mar06 0:43 / opt / zone / sbin / httpd -D SSL -D SLOT_ID0 -f /etc/opt/zone/apache/ssl_httpd.conf […]

X3220四核Linux Apache服务器的负载很高

我非常需要帮助。 我的网站现在几乎不可能使用,因为我的服务器负载很大。 我已经晚了一个月的抵押贷款,这真的没有帮助我的情况。 我一直在努力解决这个间歇性负载问题几个月(从来没有这么糟糕)。 由于我在DDOS攻击下,我怀疑是某种攻击! 我一直在想弄清楚是什么导致了负载,但我恐怕只是没有经验或知识去理解我一直在看的所有数据。 我甚至不知道从哪里开始或如何testing大量的攻击。 这里有一些你可能会觉得有用的数据 服务器:Xeon X3220四核2.4 GHz – Linux,FreeBSD 500 GB HD和8 Gig Ram。 运行Centos版本5.7服务器版本:Apache / 2.2.21(Unix)mod_ssl / 2.2.21 OpenSSL / 0.9.8e-fips-rhel5 mod_auth_passthrough / 2.1 mod_bwlimited / 1.4 FrontPage / 5.0.2.2635 mod_qos / 9.74 警告:所有的网站都是中等成年人的网站 – 主要是像精灵和亚马逊的幻想艺术。 1)网站可能会运行良好的几个星期或只有几天不到10负载,然后开始跳到40-80负载 – 不知道为什么。 相同的网站,相同的MODS,相同的stream量 – 只是WHAM! 2)几乎每天都会收到一封电子邮件,内容是:“来自IP的失败login尝试次数(每次都不一样)”。 我的networking主机(几乎从来没有帮助过我)告诉我这是一个udp洪水或什么的。 3)我已经改变了默认的MySQL的端口。 如果我把它恢复到默认值 – 我得到超过100的负载必须是一个恒定的MySQL端口洪水。 4)我重新configurationMYSQL。 链接: […]

有可能在一个域上托pipe2个站点,但有2个不同的IP?

我有服务器甲主办www.mysite.com 我想在服务器B上创build和托pipe一个站点,但将其configuration为: www.mysite.com/theSiteAtServerB TheSiteAtServerB是一个与www.mysite.com完全不同的网站,它位于一个完全不同的服务器上,但客户端希望使用www.mysite.com并在同一url下为TheSiteServerB提供内容。 这是可能吗? DNSconfiguration? 还是通过一些Apache的魔法? 谢谢! 编辑1: 为了澄清,我想实现这个没有redirect或重写url。 http://www.mysite.com/&http://www.mysite.com/siteAtServerB是独立的网站>技术上与不同的IP地址我想知道是否有可能修改DNS,以便我可以指向www.mysite。 ServerA(当前) www.mysite.com/theSiteAtServerB ————–> ServerB 编辑2 **为了确保我理解stream程,是否会像这样工作: 1- Web请求进入服务器A 2 mod_rewrite根据匹配的规则处理请求 3 mod_proxy从原始服务器获取内容并将其返回给响应 在安全性方面,大部分的locking是来自于正确的mod_proxy的正则expression式? 基于这个: http : //httpd.apache.org/docs/2.0/mod/mod_proxy.html#access ,我假设>我还需要设置代理访问? 但是,如果该网站是一个公共站点,我将在代理访问块中放置什么,我将它设置为允许*

django的Apache + mod_wsgi httpd.conf设置是否影响mysql?

我有一个使用Apache和mod_wsgi的Django网站。 自从上一个4-5天以来,我一直在我的pipe理员电子邮件上收到这种types的错误。 OperationalError: (1040, 'Too many connections') 我已经安装了Django的debugging工具栏,我有平均每个页面100-150查询和小于300毫秒的响应时间。 我不认为我重载我的MySql服务器。 另一方面,在我尝试重新configuration我的httpd.conf设置后,发生了一段时间。 我的网站每天收到800-1000次点击。 这些是我的httpd.conf设置 KeepAlive Off Listen 13646 MaxSpareThreads 15 MinSpareThreads 8 MaxClients 20 ServerLimit 20 SetEnvIf X-Forwarded-SSL on HTTPS=1 ThreadsPerChild 5 MaxRequestsPerChild 1000000 StartServers 20 WSGIDaemonProcess <project> processes=7 threads=12 python-path=<path> WSGIProcessGroup <project> WSGIRestrictEmbedded off WSGILazyInitialization On 任何帮助将非常感激。 PS。 我正在共享主机计划。 我的主机scheme有512MB RAM,300MB是免费的。

VirtualHost不工作​​ – 总是显示默认值

现在我一直在努力工作几个小时。 我正尝试在VPS上使用Apache设置虚拟主机。 我的站点可用文件夹中有以下虚拟主机文件: <VirtualHost *:80> ServerAdmin webmaster@localhost DocumentRoot /var/www/domain.ie <Directory /> Options FollowSymLinks AllowOverride None </Directory> <Directory /var/www/domain.ie> Options Indexes FollowSymLinks MultiViews AllowOverride None Order allow,deny allow from all </Directory> ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/ <Directory "/usr/lib/cgi-bin"> AllowOverride None Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch Order allow,deny Allow from all </Directory> ErrorLog ${APACHE_LOG_DIR}/error.log # Possible values include: debug, info, […]

目录指令:AuthType无但仍然需要一个AuthProvider?

我使用的是Apache 2.2而不是2.4,它解释了标题中的错误。 Brain99发表了他的评论后,我发现我有2.2,调整了我的configuration,以他的build议(仍然没有工作),尝试了一下,睡了一晚,第二天我发现,我忘了包含用于启用mod的目录的语句! 现在我只需要服务器让我从一个特定的文件夹下载文件(在我的情况下,我select了/ opt / myFolder) 分布是Debian 6.0 edit_start Apache版本是2.4,根据他们的官方文档,订单/允许条款已被弃用,不应该再使用 我是一个白痴:Apache版本是2.2。 edit_end 我在apache2.conf中的目录指令如下所示: <IfModule dir_module> DirectoryIndex index.html index.htm index.php </IfModule> ServerRoot "/etc/apache2" DocumentRoot "/opt/myFolder" <Directory /> Options FollowSymLinks AuthType None AllowOverride None Require all denie </Directory> <Directory "/opt/myFolder/*"> Options FollowSymLinks MultiViews AllowOverride None AuthType None Require all allow </Directory> 当我尝试访问该文件夹( http://myserver.de/aTestFile.zip )中的文件时,出现内部服务器错误。 另外,Apache将以下错误写入日志中: configuration […]

Apache如何一次处理多个请求?

如果有10个请求点击了Apache,它是否会逐个处理它们,所以当R3完成时,它开始运行R4,或者它启动了10个进程/线程/任何并且同时被parsing? 现在有一些背景:我有一个PHP脚本需要花费两分钟的时间来完成一些过程。 我的问题是:当一个客户端正在等待这2分钟,所有其他客户端请求正在处理? 还是等着这个结束? 顺便说一下, 如果有同时请求,我该如何处理呢? 假设对他们加以限制。 或消耗资源的限制。 比如我想让服务器使用80%的性能来服务这个webapp,而那些长时间的操作只需要20%,因为我不急于结束它们。 我不知道它是否重要,但都在PHP中。

Apache进程消耗太多的CPU

我有一个Ubuntu的Apache / PHP服务器运行PHP做appx 100点击/秒和在后台运行的PHP Cron。 无论stream量还是cron活动,我都会在某个Apache进程中偶尔遇到高CPU负载。 在我看来,它陷入某种循环或什么东西。 下面你会发现顶部和strace信息。 我怎样才能find不好的代码在哪里,是什么原因造成的? top – 14:45:24 up 3 days, 3:38, 1 user, load average: 5.10, 5.88, 5.85 Tasks: 163 total, 5 running, 158 sleeping, 0 stopped, 0 zombie Cpu(s): 47.8%us, 18.5%sy, 0.0%ni, 10.2%id, 0.0%wa, 0.0%hi, 1.8%si, 21.6%st Mem: 7885012k total, 3858484k used, 4026528k free, 177444k buffers Swap: 0k total, […]

Apache IPv4拒绝指令阻止IPv6地址

编辑我认为,过多的“拒绝”线路混淆了Apache阻止未列出的IPv4地址。 但@Ladadadada的评论让我指出确切的问题。 你可以阅读我以前的问题。 问题是,下面这行: deny from 42.1.0.0/19 阻止IPv6地址 2a01:4f8:120:8201::2 2a01:1e8:e100:ce::2 这怎么可能? 我有一个非常长的阻塞IP地址列表,由Directory指令块中的Include指令激活。 该文件只包含IPv4地址,但是我的服务器也阻塞了有限数量的IPv6地址。 它不阻止所有的IPv6stream量。 如果我删除块,这些IPv6地址可以很好地访问服务器。 最初的块文件有一个单独的“拒绝”行上的每个IP块。 我尝试将其中每40个组合,以减less规则数量和文件大小。 它仍然没有帮助。 但是,当我将规则截断为4-5否定行时,它按预期工作,并没有阻止IPv6地址。 这些是来自访问日志的示例日志。 2a01:4f8:120:8201::2 – – [03/Mar/2013:15:01:07 +0200] "GET /tdf/ HTTP/1.1" 403 387 "-" "MirrorBrain Probe (see http://mirrorbrain.org/probe_info)" 并从错误日志 [Sun Mar 03 15:01:07 2013] [error] [client 2a01:4f8:120:8201::2] client denied by server configuration: /mirror/pub/tdf/ 我如何列出大量的“拒绝”指令? 我无法控制机器的防火墙,所以这是不可能的。

Apache2 mod_rewrite + userdir

我有一个Ubuntu服务器(networking)具有以下configuration 版本:13.10 安装了:Apache2,apache2 utils,php5 启用:重写,userdir 问题 当我尝试使用重写规则,例如foo.bar.com/~«user»/page ,我得到 在此服务器上找不到请求的URL /home/«user»/public_html/page.php 。 据我所知,它在那里; 当我访问foo.bar.com/~«user»/page.php ; 田田! 它在那里。 我读了/etc/apache2/apache2.conf下的所有configuration,/ /etc/apache2/apache2.conf / /etc/apache2/mods-available/userdir.conf /etc/apache2/apache2.conf ,但对我来说没有什么奇怪的。 附加信息 用户foder权限: drwx rx rx public_html drwx rx rx权限 我读了我必须提供重写基地,但我真的没有看到什么奇怪的path 我错过了什么? 重写规则: RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME}\.php -f RewriteRule ^(.*)$ $1.php 要么 RewriteRule ^login/? login.php [L] 顺便说一句,我试图将目录移动到/ var / www和重写规则现在可以运行没有404错误。