0
基本上我有2個獨立的代碼庫,v1和v2是爲了這個例子。我想將v1站點的某個區域重定向到v2,以便我們可以定期將舊代碼移植到新代碼中。Apache重寫某些網址來分隔部分代碼庫
現在,我已經完成了這種精確的代碼移植,我只是不記得確切的細節,以及我們是否做了一些apache voodoo來使它工作。這一次,我可以讓它打到v2代碼,但隨後的請求使用v1 vhost,因此圖像v2請求正在轉換爲v1的路徑並且不存在。
所以我想domain1.com/foo/bar得到重定向到V2的代碼庫,在V1虛擬主機(在/ home /域1)我有:
RewriteRule ^/foo/?([0-9a-zA-Z]*)/?(([0-9a-zA-Z/]*))$ /home/domain2/index.php?controller=foo&action=$1¶ms=$2 [NC,L]
這成功地抓住了請求,並將它到v2代碼庫,但是然後v2代碼庫繼續使用v1 vhost。很顯然,我希望它擊中了v2的代碼庫,並開始使用虛擬主機,但不使用外部重定向[R]
從重寫日誌如下輸出:
192.168.1.64 - - [23/Apr/2009:17:04:11 +0100] [domain1.com/sid#813071d0][rid#81783540/initial] (2) init rewrite engine with requested uri /foo
192.168.1.64 - - [23/Apr/2009:17:04:11 +0100] [domain1.com/sid#813071d0][rid#81783540/initial] (3) applying pattern '^/foo/?([0-9a-zA-Z]*)/?(([0-9a-zA-Z/]*))$' to uri '/foo'
192.168.1.64 - - [23/Apr/2009:17:04:11 +0100] [domain1.com/sid#813071d0][rid#81783540/initial] (2) rewrite '/foo' -> '/home/domain2/index.php?controller=foo&action=¶ms='
192.168.1.64 - - [23/Apr/2009:17:04:11 +0100] [domain1.com/sid#813071d0][rid#81783540/initial] (3) split uri=/home/domain2/index.php?controller=foo&action=¶ms= -> uri=/home/domain2/index.php, args=controller=foo&action=¶ms=
192.168.1.64 - - [23/Apr/2009:17:04:11 +0100] [domain1.com/sid#813071d0][rid#81783540/initial] (2) local path result: /home/domain2/index.php
192.168.1.64 - - [23/Apr/2009:17:04:11 +0100] [domain1.com/sid#813071d0][rid#81783540/initial] (1) go-ahead with /home/domain2/index.php [OK]
192.168.1.64 - - [23/Apr/2009:17:04:11 +0100] [domain1.com/sid#813071d0][rid#8175e4b0/initial] (2) init rewrite engine with requested uri /images/layouts/standard/header/header_logo.gif
192.168.1.64 - - [23/Apr/2009:17:04:11 +0100] [domain1.com/sid#813071d0][rid#8175e4b0/initial] (3) applying pattern '^/foo/?([0-9a-zA-Z]*)/?(([0-9a-zA-Z/]*))$' to uri '/images/layouts/standard/header/header_logo.gif'
...
...
誰能幫助最後一步!?
謝謝,但這不能正常工作,我不記得上次我使用P標誌。 – jmoz 2009-04-24 09:22:49