如何规划一个高容量的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

时间: 2024-10-03 19:18:32

如何规划一个高容量的Apache服务器_服务器的相关文章

IDC服务器托管之技术名词解释什么是服务器_服务器

如果你的网站流量过大一般的虚拟主机空间已经满足不了你的需求,那么你就要考虑购买托管服务器了. (1).什么是服务器  服务器是一种高性能计算机,作为网络的节点,存储.处理网络上80%的数据.信息,因此也被称为网络的灵魂.做一个形象的比喻:服务器就像是邮局的交换机,而微机.笔记本.PDA.手机等固定或移动的网络终端,就如散落在家庭.各种办公场所.公共场所等处的电话机.我们与外界日常的生活.工作中的电话交流.沟通,必须经过交换机,才能到达目标电话:同样如此,网络终端设备如家庭.企业中的微机上网,获取

设置一个高容量的Linux POP3服务器_unix linux

一: 概述  本文旨在介绍如何使用开放源软件Procmail和Qpopper来配置一台可供大量用户使用的POP3服务器,重点在于如何保持最佳的服务器性能.  二: 步骤  软件环境为RedHat Linux 7.1  1. 下载最新版的Procmail和Qpopper  Procmail 最新版本现在是3.21 可从 http://www.procmail.org/procmail-3.21.tar.gz下载.  Qpopper 最新版本现在是4.0 可从 http://www.eudora.c

如何设置一个高容量的Linux POP3服务器

一: 概述 本文旨在介绍如何使用开放源软件Procmail和Qpopper来配置一台可供大量用户使用的POP3服务器,重点在于如何保持最佳的服务器性能. 二: 步骤 软件环境为RedHat Linux 7.1 1. 下载最新版的Procmail和Qpopper Procmail 最新版本现在是3.21 可从 http://www.procmail.org/procmail-3.21.tar.gz下载. Qpopper 最新版本现在是4.0 可从 http://www.eudora.com/qpo

使用Apache&花生壳架设Web服务器_服务器

这里讲的是IIS服务器,其实花生壳在Apache下也能正常使用,这一点我在以前的帖子中已经讲过,现在专门把Apache的配置作一详细说明: 首先:当然是下载Apache啦,Apache目前最新的Windows版本是1.3.2X,你可以到它的官方网站去下载最新版(http://www.apache.org),Win2000对应的下载文件是Win32版本,Win98和Winme对应的下载文件是R298orMe版本,注意别下载错了.如果你使用的是Win2000而下载了Win98orMe的版本,嘿嘿,等

CPU占用率高的N种原因_服务器

1.防杀毒软件造成故障  由于新版的KV.金山.瑞星都加入了对网页.插件.邮件的随机监控,无疑增大了系统负担.处理方式:基本上没有合理的处理方式,尽量使用最少的监控服务吧,或者,升级你的硬件配备.  2.驱动没有经过认证,造成CPU资源占用100%  大量的测试版的驱动在网上泛滥,造成了难以发现的故障原因. 处理方式:尤其是显卡驱动特别要注意,建议使用微软认证的或由官方发布的驱动,并且严格核对型号.版本.  3.病毒.木马造成  大量的蠕虫病毒在系统内部迅速复制,造成CPU占用资源率据高不下.解

Linux Apache Web 服务器_服务器

  商业界很快看到了其价值,许多公司建立了主页,利用Web在网上发布消息,并反它作为各种服务的界面,如客户服务.特定产品和服务的详细说明.宣传广千以及是渐增长的产品销售和服务.商业用途促进了环球信息网络的迅速发展.  如果你想通过主页向世界介绍自己或自己的公司,就必须将主页放在一个WEB服务器上,当然你可以使用一些免费的主页空间来发布.但是如果你有条件,你可以注册一个域名,申请一个IP地址,然后让你的ISP将这个IP地址解析到你的LINUX主机上.然后,在LINUX主机上架设一个WEB服务器.你

如何使用 Rails 和七牛云存储,在 15 分钟内打造一个图片分享社交应用原型_服务器其它

十年前,Web 应用框架 Rails 创始人 David Heinemeier Hansson 曾录制视频,向我们演示如何使用 Ruby on Rails 在 15 分钟内创作一个 blog 引擎.这个视频通过 Rails 优秀的 MVC .习惯优于配置(Convention over Configuration)等设计,以及强大的代码生成.scaffold 等功能,成功展示了 Ruby on Rails 编写 Web 应用核心功能的高效简洁.Ruby on Rails 这门技术也在 Web 2

Windows下实现简单的libevent服务器_服务器其它

最近再学习Libevent由于自己使用的是windows系统,遗憾的是有关在vs下可以参考的程序少之又少.在参考了许多的博客文章后.自己摸索写了一个简单的Libevent Server程序.并且在网上找了一个简单的客户端程序,测试该代码成功.今天在此做一个记录. Libevent的确是一个非常好用的东西,还在继续学习中,后续还要在windows下实现Libevent的多线程使用.今天先把自己搞出来的东西贴上来,仅供学习参考.在vs2015上编译通过. 默认情况下是单线程的(可以配置成多线程,如果

基于Xen的VPS 配置squid服务器_服务器其它

安装很简单:apt-get install squid 配置中的重点是打开用户验证. 通过htpasswd建立用户名密码文件,然后在squid的配置文件中设置. http_port 3128 auth_param basic program /usr/lib/squid/ncsa_auth /etc/squid/squid.password auth_param basic children 5 auth_param basic realm Hamo's Private Proxy auth_p