Apacheパラメータおよび最適化


Apacheパラメータおよび最適化
ServerTokens OS             #                   
ServerRoot  "/etc/httpd"     #      
PidFile run/httpd.pid         # apache    PID
    Timeout 60                  #       ,         60         
    ,    300     ,          
KeepAlive Off
        “Off”   “On”
              ,     TCP                 

    ,               ,                  
               TCP  。
MaxKeepAliveRequests 100
      100  500   
        KeepAlive  , KeepAlive     On   ,        
               。             。0     
KeepAliveTimeout 65
 KeepAlive   “On”    ,                   
              。     15  ,        (      )
               Apache      ,          。


StartServers      8             #  Apache   ,    PID      。
#Apache                ,         ,
MinSpareServers   5             #       PID  
MaxSpareServers   20                #       PID  
ServerLimit      4096               #      
MaxClients      4096                #                Apache
         ,   process        。
  MaxClients           www           ,
                。       :         
          ( process  ),                 
       ,          (    SWAP),  ,MaxClients  
Apache            ,             ,       Apache
MaxRequestsPerChild  4000
                 。    :             ,
       ,                       ,
         。             process         。
      ,        。


StartServers         4
MaxClients         300
MinSpareThreads     25
MaxSpareThreads     75 
ThreadsPerChild     25
MaxRequestsPerChild  0


   prefork worker                     。
                        ,         
   ,            。                 ,
                      Apache   ,        

Redhat CentOS                   ,   
    |- /usr/sbin/httpd    prefork  
    |- /usr/sbin/httpd.worker    worker  

/etc/sysconfig/httpd       Apache       ,    。
                。
LoadModule cgi_module modules/mod_cgi.so
LoadModule version_module modules/mod_version.so
Apache              ,         
Include conf.d/*.conf
ServerAdmin root@localhost
        ,          ,            
DocumentRoot   "/var/www/html"
                  

    Options FollowSymLinks
    AllowOverride None

Directory                
       www           ,     “/”   
          

  Directory            
Options -Indexes FollowSymLinks
Options(    )
               Apache     ,     Apache        。

       :
    Indexes:              (   index.html) ,
                ,         DirectoryIndex      
         Indexes
    FollowSymLinks:  Fllow Symolic Links   ,              。
               /var/www/html,   WWW    ,      chroot
      。      chroot          ,    ,      ,  
    /var/www/html                     ,            。
                         
    ExecCGI:        CGI   ,    。    ,OpenWebMail   
      Perl  ,   OpenWebMail    ,             ExecCGI
         。     :             ExecCGI
    Includes:   Server-Side Include      。       
    MultiViews:             ,       。           
       ,       ,                    。     
         ,       /var/www/error/      。
AllowOverride None
        
            .htaccess       。     httpd.conf         
      ,                           。  ,Apache  
          .htaccess             。         
.htaccess            。        :
    ALL:          
    AuthConfig:      (     )    
    Indexes:   Indexes     
    Limits:      Allow、Deny Order        
    None:    ,    .htaccess    
  .htaccess      Apache   ,        ,    

 Controls who can get stuff from this server.

    Order allow,deny
    Allow from all
         
         Apache PID        。
               :
    deny,allow   deny    ,           allow
    allow,deny   allow     ,            deny
         ,   allow,deny      deny(    )
        allow from all,allow    ,           

apacheプロファイル
デフォルトのWeb保存ファイル/var/www/html
########## vi/etc/httpd/conf/httpd.conf###################
documentroot "/var/www/html/"                   #   apache     (     )
listen 80                                      #           
directoryindex index.html index.html.var            #       
servername www.baidu.com:80                   #     
serveradmin  [email protected]                 #      

 virtual hosts
NameVirtualHost *:80      #           ,             
include conf/vhost/*              #       

仮想サイトディレクトリを作成し、
仮想ホストを複数に分け、www.a.com www.b.com
ServerTokens OS                                 #     
ServerRoot  "/etc/httpd"                           #     
PidFile run/httpd.pid                               #   pid     
Timeout 60                                      #     60 
KeepAlive off                                     # off/on          
MaxKeepAliveRequests 100                       #             
KeepAliveTimeOut 65                             #               (   )

Apache動作モード

StartServers      8                              #   Apache   ,    PID        。
#Apache                ,         ,
MinSpareServers   5                              #     (  )   PID  
MaxSpareServers   20                             #     (  )   PID  
ServerLimit      4096                            #               maxclients
MaxClients      4096                             #                 Apache
MaxRequestsPerChild  0           # 1            0     

Apache動作モード

StartServers         4
MaxClients         300
MinSpareThreads     25
MaxSpareThreads     75 
ThreadsPerChild     25          #           
MaxRequestsPerChild  0          # 

Webサイトプログラムのルートディレクトリ

    Options FollowSymLinks
    AllowOverride None
    Order deny, allow
Allow from all

ディレクトリ・サイトの権限を発行するには、プロファイルで権限を付与する必要があります.そうしないとアクセスできません.

    Options Indexes FollowSymLinks
    AllowOverride None
    Order allow,deny
Allow from al
BandwidthModule On #       
  ForceBandwidthModule On #       
  MaxConnection all 2000 #      2000
  Bandwidth all 200000 #          200KB



    DirectoryIndex index.html index.hml    #     ,      ,   


     #      
    Order allow,deny
    Deny from all
    Satisfy All


ErrorLog "logs/error_log"
LogLevel warn         #     


    ScriptAlias /cgi-bin/ "/usr/local/apache/cgi-bin/"     #     


       #        
    AllowOverride None
    Options None
    Order allow,deny
    Allow from all


DefaultType text/plain        #       

             #       
    TypesConfig conf/mime.types
    AddType application/x-compress .Z
AddType application/x-gzip .gz .tgz
AddType application/x-httpd-php .php


       # ssl  
SSLRandomSeed startup builtin
SSLRandomSeed connect builtin


         
    LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
    LogFormat "%h %l %u %t \"%r\" %>s %b" common
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\""  aming    

ログフィルタを定義するときに追加する
You need to enable mod_logio.c to use %I and %O
      LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\" %I %O" combinedio
    
      CustomLog "logs/access_log" common    #       

cgiサポートではポイントをログアウトでき、あまり使用されません.

    ScriptAlias /cgi-bin/ "/usr/local/apache//cgi-bin/"




    AllowOverride None
    Options None
    Order allow,deny
    Allow from all