我必須在某些邏輯上運行多個網站版本。比如說,對於2014年1月以後註冊的所有用戶,我必須展示較新版本的網站,對於較老的用戶,我必須顯示我的網站的舊版本。在一些php邏輯後面運行多個網站版本
Web服務器:用於靜態內容的nginx和用於動態內容的apache。
平臺:php,mysql和linux
對於用戶來我的網站,我必須檢查註冊日期,並相應地將用戶重定向到相應的網站版本。但是我想阻止這種額外的重定向。
使用cookie,代理或其他方法可能會發生同樣的情況嗎?
問題陳述:
我已經改組我的網站。我希望我的翻新網站只會顯示給新的註冊用戶。對於現有的用戶,舊版本將繼續。兩個網站版本的Web根目錄都不相同。
nginx的配置:
server {
listen 80;
server_name example.com;
location/
{
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_set_header X-FORWARDED_PROTO https;
set $cookie_redirect 0;
if ($http_cookie ~ 'ver=1') {
set $cookie_redirect 1;
}
if ($cookie_redirect ~ 1) {
proxy_pass http://127.0.0.1:6060;
}
if ($cookie_redirect ~ 0) {
proxy_pass http://127.0.0.1:7070;
}
}
apache配置:
<VirtualHost *:6060>
DocumentRoot /var/www/dir1
ServerName example.com
</VirtualHost>
<VirtualHost *:7070>
DocumentRoot /var/www/dir2
ServerName example.com
</VirtualHost>
但如果cookie被設置它將工作。對於第一次來的用戶,我必須根據註冊日期設置Cookie。這樣我就可以向新用戶展示改造後的網站。初次使用者可能如何?
你能告訴我們關於這兩個網站應該如何運作的一些事情嗎?頁面之間是否有重疊?他們在不同的目錄?你如何檢查註冊日期?你使用cookies /會話嗎?他們持續多久?等Cookie可能是一種可能性,但我們需要更多關於您網站的信息。 – 2014-09-22 09:46:59
修改後的問題。頁面之間沒有重疊。這兩個版本的Web根目錄是不同的。 – 2014-09-25 11:28:13