apache虚拟主机的配置

apache虚拟主机的配置

首先在httpd.conf中把include conf/httpd-vhost.conf前面的 # 号去掉,引入httpd-vhost.conf文件

<VirtualHost *:80>
    DocumentRoot "/usr/local/data/www"
    ServerName www.111.com
    ServerAlias www.222.com
   #ErrorLog "logs/dummy-host.example.com-error_log"
   SetEnvIf Request_URI ".*\.gif$" image-request
   SetEnvIf Request_URI ".*\.jpg$" image-request
   SetEnvIf Request_URI ".*\.png$" image-request
   SetEnvIf Request_URI ".*\.bmp$" image-request
   SetEnvIf Request_URI ".*\.swf$" image-request
   SetEnvIf Request_URL ".*\.js$" image-request
   SetEnvIf request_URI ".*\.css$" image-request
   CustomLog "|/usr/local/apache/bin/rotatelogs -l /tmp/access_%Y%m%d.log 86400"
lin env=!image-request
    <IfModule mod_rewrite.c>
        RewriteEngine on
        RewriteCond %{HTTP_HOST} ^www.222.com$ [OR]
        RewriteCond %{HTTP_HOST} ^www.333.com$
        RewriteRule ^/(.*)$ http://www.111.com/$1 [R=301,L]
    </IfModule>
    <Directory /usr/local/data/www>
        AllowOverride AuthConfig
        AuthName '123'
        AuthType Basic
        AuthUserFile /usr/local/data/.htpasswd
        require valid-user
    </Directory>
</VirtualHost>

虚拟主机的基本配置

       在<VirtualHost*:80></VirtualHost>标签中,DocumentRoot “xxxxxxxxxxxx” 是配置网站所在的目录

       ServerName 是配置主机名

       ServerAlias 是配置主机别名

       ErrorLog 是配置错误日志

       CostomLog 是配置访问日志

配置虚拟主机的访问权限

      <Directory /usr/local/data/www> --对哪个目录设置访问权限
        AllowOverride AuthConfig          --使用 .htpasswd文件
        AuthName '123'                           --设置认证的领域
        AuthType Basic                            --用户认证的方法
        AuthUserFile /usr/local/data/.htpasswd  -- 设置.htpasswd文件所在的位置
        require valid-user                        --设置访问的用户
    </Directory>

配置虚拟主机域名转跳

     <IfModule mod_rewrite.c>           --mod_rewrite.c模块
        RewriteEngine on                      --使用域名转跳
        RewriteCond %{HTTP_HOST} ^www.222.com$ [OR]   --转跳的条件
        RewriteCond %{HTTP_HOST} ^www.333.com$            -
        RewriteRule ^/(.*)$ http://www.111.com/$1 [R=301,L]   --转跳的结果
    </IfModule>

配置虚拟主机的访问日志

        SetEnvIf Request_URI ".*\.gif$" image-request
        SetEnvIf Request_URI ".*\.jpg$" image-request
        SetEnvIf Request_URI ".*\.png$" image-request
        SetEnvIf Request_URI ".*\.bmp$" image-request
        SetEnvIf Request_URI ".*\.swf$" image-request
        SetEnvIf Request_URL ".*\.js$" image-request
        SetEnvIf request_URI ".*\.css$" image-request     --把以上的内容归为一组
        CustomLog "|/usr/local/apache/bin/rotatelogs -l /tmp/access_%Y%m%d.log 86400"  --日志切割,按天划分日志
        lin env=!image-request   --日志中入会记录image-request中的内容

配置虚拟主机的文件缓存时间

      <IfModule mod_expires.c>
        ExpiresActive on --开启文件缓存
        ExpiresByType image/gif "access plus 1 days" --设置gif格式的文件的缓存时间为1天
        ExpiresByType image/jpeg "access plus 24 hours"
        ExpiresByType image/png "access plus 24 hours"
        ExpiresByType text/css "now plus 2 hour"
        ExpiresByType application/x-javascript "now plus 2 hours"
        ExpiresByType application/x-shockwave-flash "now plus 2 hours"
        ExpiresDefault "now plus 0 min"
    </IfModule>

     


阅读更多
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/wackycrazy/article/details/50801582
个人分类: lamp
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭
关闭