规划高容量的Apache服务器

2019-05-22    来源:爱站科技

容器云强势上线!快速搭建集群,上万Linux镜像随意使用

Apache是世界使用排名第一的Web服务器软件,它可以快速可靠的将Perl/Python等解释器编译到服务器中,那么你知道如何规划一个高容量的Apache服务器?现在我们就去看看规划高容量的Apache服务器的方法。

A是局域网内部的一台WEB服务器,安装Redhat?Linux?6.X,编译Apache+PHP4+MySQL?
B是公司防火墙,外部地址为a.b.c.d,是通向Internet的唯一路径。B上也运行Apache?
做反向代理到内部机器B。假设公司的域名为@company.com,B是该域的域名服务器。?
二:WEB目录的组织结构?
我们计划把WEB服务器数据文件置于一单独的目录/www下面,再在其下面建立相应的?
子目录,如果我们计划设置WEB服务器web.company.com,则建立目录?
/www/web.company.com?,结构如下:?
/www/web.company.com/public/htdocs?
/cgi-bin?
/www/web.company.com/staging/htdocs?
/cgi-bin?
/www/web.company.com/developer/htdocs?
/cgi-bin?
三:?访问方法与?
对staging和developer目录用基于端口的来访问,分别对应端口81,82。?
下面是apache的配置文件/usr/local/apache/conf/httpd.conf中部分的?
配置:?
Listen?80?
Listen?192.168.11.8:81?
Listen?192.168.11.8:82?
〈VirtualHost?192.168.11.8:81>?
documentroot?/www/web.company.com/staging/htdocs/?
scriptalias?/cgi-bin?/www/web.company.com/staging/cgi-bin/?
transferlog?"|/usr/local/apache/bin/cronolog?/usr/local/apache/logs/web/staging/%Y/%m/%d/access_log"?
errorlog?"|/usr/local/apache/bin/cronolog?/usr/local/apache/logs/web/staging/%Y/%m/%d/error_log"?
〈/VirtualHost>?
〈VirtualHost?192.168.11.8:82>?
documentroot?/www/web.company.com/developer/htdocs/?
scriptalias?/cgi-bin?/www/web.company.com/developer/cgi-bin/?
transferlog?"|/usr/local/apache/bin/cronolog?/usr/local/apache/logs/web/developer/%Y/%m/%d/access_log"?
errorlog?"|/usr/local/apache/bin/cronolog?/usr/local/apache/logs/web/developer/%Y/%m/%d/error_log"?
〈/VirtualHost>?
注:上面是基于端口的设置,要访问测试服务器,用?
开发服务器用?
上面的transferlog?and?errorlog用了不是默认的格式,而是Apache网站上建议的这种每天?
一个文件的年/月/日格式,可从下载编译?
后安装在/usr/local/apache/bin/cronolog,可查看Apache网站获得更多信息。?


如还有其它主页需要在此服务器上服务,如在/www下再创建子目录hr.company.com(人事部门)?
,可为主机A创建IP别名,如192.168.11.9,再做同样的基于端口的设置?
三:个人主页的情况?
假定Apache以用户组身份nobody运行,且用户主目录为/home/jephe,则在此目录下创建目录?
public_html?
a.设置用户主目录/home/jephe要给nobody组以读和执行的权限?
chmod?750?-R?/home/jephe?
b.设置用户主目录/home/jephe下public_html目录的权限?
chmod?-R?2770?/home/jephe/public_html?
c.设置用户主目录的拥有者?
chown?-R?jephe.nobody?/home/jephe/public_html?
用户可FTP上传主页文件至自己的目录中,要设置/etc/inetd.conf中的FTP上载的umask默认值?
为u002,?
ftp?stream?tcp?nowait?root?/usr/sbin/tcpd?in.ftpd?-l?-a?-u002?
然后用killall?-HUP?inetd生效。?
最后用?访问个人主页。?
四:防火墙机器B上的Apache反向代理?
设置如下:?
NameVirtualHost?a.b.c.d?
〈VirtualHost?a.b.c.d>?
servername?web.company.com?
errorlog?"|/usr/local/apache/bin/cronolog?/var/log/httpd/web/%Y/%m/%d/error_log"?
transferlog?"|/usr/local/apache/bin/cronolog?/var/log/httpd/web/%Y/%m/%d/access_log"?
rewriteengine?on?
rewriterule?^(/.*)$?[P,L]?
proxyrequests?off?
〈/VirtualHost>?
五:备份?
用Rsync备份主目录/www/web.company.com/public/htdocs整个目录,关于如何应用RSYNC,参见?
文章荟萃中的其它文章,主页在rsync.samba.org

如果有大家有疑问也可以留言交流,谢谢大家对西部数码技术频道的支持。

标签: [db:TAGG]

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点!
本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。

上一篇:Linux服务器防范四种级别攻击的方法

下一篇:用户网站被黑怎么办