Articles of apache 2.2

.htaccess强制浏览器端caching

我正在使用.htaccess代码 <IfModule mod_headers.c> <FilesMatch "\.(gif|jpg|png|css|swf|php)$"> Header add "Expires" "Mon, 28 Jul 2014 23:30:00 GMT" Header add "Cache-Control" "max-age=31536000" </FilesMatch> </IfModule> <IfModule mod_expires.c> ExpiresActive On ExpiresDefault A604800 ExpiresByType text/css A604800 ExpiresByType image/gif A604800 ExpiresByType image/png A604800 ExpiresByType image/jpeg A604800 ExpiresByType application/x-shockwave-flash A604800 </IfModule> 问题是,它仍然检查服务器,如果该文件已被修改,然后返回304未修改。 我希望它默认使用caching,即本地浏览器caching,而不是往返服务器。 有什么build议么?

mysql服务器突然崩溃了

所以我的Mysql服务器一直工作得很好,但是现在每当我尝试加载时都突然间出现了这个错误: 110827 18:42:06 [Note] Plugin 'FEDERATED' is disabled. 110827 18:42:06 InnoDB: Started; log sequence number 0 42897533 110827 18:42:06 [Note] Recovering after a crash using mysql-bin 110827 18:42:06 [Note] Starting crash recovery… 110827 18:42:06 [Note] Crash recovery finished. 110827 18:42:06 [Note] Event Scheduler: Loaded 0 events 110827 18:42:06 [Note] wampmysqld: ready for connections. Version: '5.1.36-community-log' […]

在LAMP服务器上configurationAPC的一般指导和build议是什么?

我正在寻找在LAMP系统上configurationAPC的一些知识。 链接到好的参考资料也是有帮助的。

用这个脚本崩溃VPS CPU是否正常?

这是脚本,它带有mod_evasive: #!/usr/bin/perl #test.pl: small script to test mod_dosevasive's effectiveness use IO::Socket; use strict; for(0..100) { my($response); my($SOCKET) = new IO::Socket::INET( Proto => "tcp", PeerAddr=> "MY_IP:80"); if (! defined $SOCKET) { die $!; } print $SOCKET "GET /?$_ HTTP/1.0\n\n"; $response = <$SOCKET>; print $response; close($SOCKET); } 如果我在PC上运行这个脚本,用我的VPS(openVZ,3个CPU核心2.53Ghz,1Gb RAM)的ipreplace“MY_IP”,服务器中的CPU负载增加得非常快。 如果我同时运行3或4个脚本实例,则CPU负载达到100%。 脚本停止后,CPU使用率将回到5-10%。 这是正常的吗? CSF被安装,并且阻塞了超过300个连接的IP,但似乎并没有阻止这个脚本。 如果我检查netstat -n | grep […]

非共享,每个用户,WordPress(PHP)安装

什么是build立基于Apache的PHP虚拟主机安装的方法,每个站点只有一个用户分配给它? 只读取和执行每个站点的一个用户(不是www-data或所有用户) /srv/www安装文件夹(不是/home ,用户没有shell) 写访问限于一个文件夹 因为我相信这会增加一些安全性,以防止一个站点在共享主机上受到威胁。 我会很感激指向工具,教程等。

使用Apache设置SSL证书

我正在尝试在Windows上为我的apache服务器创build自己的CA和服务器证书。 当我启动Apache时,我得到“无法configurationCA证书链!” Apache的SSLconfiguration设置是: SSLProtocol -all +SSLv2 SSLCipherSuite SSLv2:+HIGH:+MEDIUM:+LOW:+EXP SSLCertificateFile "C:/data/server/server.crt" SSLCertificateKeyFile "c:/data/server/server.key" SSLCertificateChainFile "c:/data/server/ca.crt" SSLCACertificateFile "c:/data/server/ca.crt" 而且我基于Apache的“SSL / TLS强encryption:常见问题”生成密钥/安全公告: 生成CA密钥/证书: openssl genrsa -out ca.key 1024 openssl req -new -x509 -nodes -sha1 -days 365 -key server.key -out ca.crt 生成服务器密钥/证书: openssl genrsa -out server.key 1024 openssl req -new -key server.key -out server.csr openssl x509 -req -days 365 […]

tomcat负载平衡的问题

我有一个数据中心(linode)的cpanel VPS,我有一堆客户的帐户,我想平衡负载使用2个额外的VPS在与私有IP连接相同的数据中心。 我正在考虑设置这个平衡负载: VPS 1:Cpanel,邮件服务器,Apache(Proxy)。 获取请求,公共IP。 VPS 2:Mysql。 VPS 3:Tomcat。 现在我的重点是设置VPS 3。 Cpanel体系结构通过apache加载加载Java模块,包括在虚拟主机定义中的一个mod_jk,我正在考虑将servlet更改为tomcat VPS,并将其位置更改为如下所示: DocumentRoot IP_OF_VPS:/home/didactac/public_html 我怎么不知道这是否会炒锅! 这里是apache的虚拟主机: <VirtualHost 173.230.130.64:80> ServerName danielakosanstore.com ServerAlias www.danielakosanstore.com DocumentRoot /home/danielak/public_html ServerAdmin [email protected] UseCanonicalName Off CustomLog /usr/local/apache/domlogs/danielakosanstore.com combined CustomLog /usr/local/apache/domlogs/danielakosanstore.com-bytes_log "%{%s}t %I .\n%{%s}t %O ." ## User danielak # Needed for Cpanel::ApacheConf <IfModule mod_suphp.c> suPHP_UserGroup danielak danielak </IfModule> <IfModule !mod_disable_suexec.c> […]

Mysql挂断了服务器。 如何避免这一点?

有时候我的网站因为Mysql耗费了所有资源而“倒台”,但是我认为它不会停止创build更多的httpd进程。 那可能吗? 如果我重新启动apache,这些进程消失,我可以看到由mysql进程的CPU消耗缓慢下降,然后该站点再次联机。 无论如何,我无法find瓶颈。 该网站有很多cronjobs(php脚本),每个生成日志,其中包括总执行时间。 所以我的第一个想法是试图find花了很多时间的脚本,但这是不可能的,因为它只需要其中一个放慢MySQL服务器,让他们都增加了他们的执行时间。 有什么build议? 我在哪里可以学习如何find瓶颈? 注:我在CentOS,Apache 2,PHP 5.3和MySQL 5

Apache Etags,需要帮助吗?

我们目前没有使用Expire头文件,但是我会推荐它,但是迫使我们的大型开发团队/业务改变他们的做法并且重新命名静态文件,每个新版本都不容易获得更新的文件。 我运行了YSlow,我们得到了一个Etags的F,“有24个组件错误configurationETags”。 Apache httpd.conf没有手动configurationEtags,所以看起来我们使用的是默认设置。 (FileETag INode MTime大小)。 当我访问我们的网站,然后刷新我可以看到Etags似乎工作得很好: 一个镜像示例:If-Modified-Since:星期六,23七月2011 02:05:28 GMT If-None-Match:“21246-eb05-4a8b30415ea00”Cache-Control:max-age = 0 HTTP / 1.1 304 Not Modifieddate:2011年9月6日(星期二)20:59:29 GMT服务器:IBM_HTTP_Server连接:Keep-Alive Keep-Alive:timeout = 6电子标签:“21246-eb05-4a8b30415ea00” 1)我看到一个“304未修改”的图像文件,js,html等在我们的着陆页上。 为什么Yslow说我们有一些configuration错误的Etags,当他们都configuration了相同的默认Apacheconfiguration? YSlow报告提到这些相同的文件types.. 2)我们在多个Apache Web服务器之间有一个F5负载平衡器,我们使用粘性位,这就是为什么我认为Apache inode Etag不会太困扰我们。 但是,如果用户明天回来,并击中另一个networking服务器,我们将失去正确的caching选项,因为他们的indode会不同? 我们是否应该更改httpd.conf并从所有Web服务器中删除Etag inodevariables? 对不起,长度! 谢谢

caching控制最大年龄问题

我试图从下面了解caching控制:max-age = 0configuration: 这是来自HTTP Live Headers的snipet,用于刷新后着陆页上的静态图像: If-Modified-Since: Sat, 23 Jul 2011 02:05:28 GMT If-None-Match: "21246-eb05-4a8b30415ea00" **Cache-Control: max-age=0** HTTP/1.1 304 Not Modified Date: Tue, 06 Sep 2011 20:59:29 GMT Server: IBM_HTTP_Server Connection: Keep-Alive Keep-Alive: timeout=6 Etag: "21246-eb05-4a8b30415ea00" 我看到我们的Cache-Control显示max-age=0 。 我find了这个解释: 高速caching控制:最大年龄 这是HTTP 1.0中早期Expires头部的HTTP 1.1等效项。 它隐含地告诉浏览器可能会caching页面,但是如果超过max-age,则必须与服务器重新validation。 将max-age设置为零可确保页面不会从caching中提供,但始终会对服务器进行重新validation。 如果这是正确的,我们不应该从浏览器caching拉如果你看看上面的304是不正确的? max-age=0是什么意思? 我们没有在Apache httpd.conf中手动configuration任何cachingconfiguration,所以我假设我们使用默认caching/ etags。