apache安裝(1)

Apache 2.2.22的安裝

apache2.x增加如下特性:a.預派生(Profork) b.工作者(Worker) c.獨立子進程(Perchild).
 
1.下載地址
 
2.       安裝前準備

#> rpm -qa | grep httpd   //檢查系統是否安裝過httpd服務
 httpd-2.0.40-21
#> rpm -e httpd-2.0.40-21 //刪除系統rpm包安裝的apache
 
3.安裝:

 
./configure  \
--prefix=/usr/local/apache \
--enable-cgi  \
--enable-so  \
--enable-proxy \
--enable-rewrite \
--enable-speling \
--enable-suexec \
--with-suexec-caller=daemon \
--with-suexec-docroot=/data
 
#> make
#> make install
Speling是忽略大小寫,如果使用要在httpd.conf文件最後加入CheckSpelling on
 
設置httpd.conf

<Directory /> # 此處要根據實際目錄
    Options -Indexes FollowSymLinks
    AllowOverride All
</Directory>
Options   -Indexes 是禁止目錄瀏覽
4.改apache最大連接數
httpd.conf中找到,把前面的#去掉
Include conf/extra/httpd-mpm.conf
Include conf/extra/httpd-vhost.conf
 
修改extra/httpd-mpm.conf

<IfModule mpm_prefork_module>
ServerLimit 2000
MaxClients 1500
MaxRequestsPerChild 10000
</IfModule>
 
netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}'
(壓力測試時查看有多少個連接)
最高設置到20000,如果想要20000以上的併發數,那就只有從新編譯了。
 
5.安裝Cronolog,日誌分割
 
 如果是centos可直接 yum install cronolog
 
5.1. 下載:
5.2. 安裝
# ./configure
# make
# make install
 
5.3. 查看
# which cronolog
 
5.4. 配置httpd.conf
CustomLog "|/usr/local/sbin/cronolog /data/logs/access_log.%Y%m%d" combined
ErrorLog "|/usr/local/sbin/cronolog /data/logs/error_log.%Y%m%d"
 
5.5. 建虛機用戶
useradd -g users -s /sbin/nologin -M web001
6.配置httpd.conf文件
去掉下行的# ,根據實際情況命名
ServerName www.example.com
 
虛擬主機站點根目錄,可更改
<Directory "/usr/local/www">
 
7.虛擬主機的配置
以共享ip爲例,httpd.conf最後添加

#VIRTUAL_CONFIG
 
NameVirtualHost 192.168.1.100
 
<VirtualHost 192.168.1.100>
DocumentRoot /usr/local/apache/htdocs
ServerName test.com
ScriptAlias /cgi-bin/ /usr/local/apache/cgi-bin/
</VirtualHost>
 
<VirtualHost 192.168.1.101>
SuexecUserGroup web001 users
ServerAdmin [email protected]
DocumentRoot /data/aaa/htdocs
ServerName aaa.com
ServerAlias aaaa.com
ServerAlias www.aaa.com
ScriptAlias /cgi-bin/ /home/aaa/cgi-bin/
DirectoryIndex index.php index.htm
</VirtualHost>
 
<VirtualHost 192.168.1.102>
SuexecUserGroup web002 users
ServerAdmin [email protected]
DocumentRoot /data/bbb/htdocs            
ServerName bbb.com
ServerAlias bbbb.com       
ServerAlias www.bbb.com       
php_admin_value open_basedir "/tmp:/usr/local/www/web002"    //php權限 
php_admin_value safe_mode On  
ScriptAlias /cgi-bin/ /data/bbb/cgi-bin/
DirectoryIndex index.php index.htm
</VirtualHost>
 
 
 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章