Apache站点重定向配置

时间:2012-11-23 15:38:07

标签: apache mod-rewrite redirect url-rewriting virtualhost

这是我的情况:

  • 客户为其网站www.site.com购买了域名。
  • 我在/var/www/hosts/www.site.com.war文件夹中配置了一个新网站。
  • 客户要求我配置Apache服务器(Live服务器)以执行以下操作:
    • 如果请求“live.site.com”网址,则允许访问创建的网站,并提供密码保护。这是标准的“上线前”过程,它需要受邀客户端配置其主机文件(“Live_server_IP”和“live.site.com”)。
    • 如果请求“www.site.com”网址,请重定向到其他域页“www.othersite.com/page.jsp”。

这是我的配置:

<VirtualHost *:80>
    ServerName www.site.com
    DocumentRoot /var/www/hosts/www.site.com.war/

    ExpiresActive On
    ExpiresByType image/gif A2592000
    ExpiresByType image/jpeg A2592000
    ExpiresByType image/png A2592000

    JkMount /*.jsp xyz
    JkMount /*.xml xyz

    #RewriteEngine on
    #RewriteCond %{HTTP_HOST} www.site.com

    #RewriteRule ^(.*)$www.site.com(.*)& http://www.othersite.com/page.jsp [R=301]

    # Remove this password protection after go-live
    <Directory /var/www/hosts/www.site.com.war/ >
          AuthType Basic
          AuthName "By Invitation Only"
          AuthUserFile /etc/httpd/conf/site.htpasswd

          require valid-user
    </Directory>
</VirtualHost>


# For internal company use
<VirtualHost *:80>
    ServerName live.site.com

    ProxyPass / http://www.site.com/
    ProxyPassReverse / http://www.site.com/
</VirtualHost>

此配置仅为两个URL请求(“www.site.com”和“live.site.com”)提供了对新站点的密码保护访问,这不是我需要做的。

我也尝试使用不同的RewriteRule-s:“www.site.com”,“。”,“^ /(。)&amp;”,使用L标志等;省略RewriteCond等。

我想知道,是否有可能将Apache服务器配置为我的客户端请求?如果是,我在Apache配置中做错了什么?

谢谢。

0 个答案:

没有答案