2014-01-08 64 views
2

所以,要在一開始更多的圖形:子域名重定向到一個完整的URL,並保持原來的子域

這是當前的鏈接結構:

http://example.com/video-slug/wordpress-title-of-the-video-slug

我有一個子域:

http://tv.example.com/

我想實現的是,當有人點擊:

http://tv.example.com/wordpress-title-of-the-video-slug

它的數字指出,tv.example.com等於example.com/video並打開鏈接:

http://example.com/video/wordpress-title-of-the-video-slug,但保留在地址欄結構:

http://tv.example.com/wordpress-title-of-the-video-slug

+0

htaccess是要走的路! –

+0

你想重寫,而不是重定向。 –

+0

我很欣賞陳述明顯的,我在這裏標記了.htaccess,所以人們會認爲我知道要走哪條路,但是我需要編碼幫助,因爲我的.htaccess知識在開爾文等級上等於1度。 – Dino

回答

1

你需要重寫規則您的.htaccess文件。從記憶中,這樣的事情應該起作用。

RewriteEngine on 
RewriteRule ^(.*)$ http://example.com/video/$1 [NC] 

置於tv子域。

+0

它將所有內容發送到'example.com/video',因此'tv.example.com/video- title-slug'與「tv.example.com」相同 – Dino

+0

對不起,請參閱編輯。我認爲這應該工作。 –

+0

好極了,它現在重定向,現在有一種方法可以將它保持在位置欄中;現在當我輸入'tv.example.com/video-title'時,它會打開'example.com/video/video-title',但是也會在地址欄中改變它,以任何方式強制它保留'tv.example.com /視頻title'? – Dino

0

我認爲這是使用PHP一個簡單的方法:

<?php 
//add some params 
$_GET['param1'] = value1; 
//the actual page you wish to redirect to 
include "/var/www/page.php"; 

?> 
1

一個更通用的解決方案,適用於您的問題。 它允許任何http://subdomain.example.com/提供位於http://example.com/subdomain/的內容,同時保留原始URL(包含子域)。

(對於代理人)-P選項用於這一目的(保持在地址欄中的原始URL),和答案在接受的答案意見提出的問題(我不能評論回壽..)

RewriteEngine on 
RewriteBase/
RewriteCond %{HTTP_HOST} ^(.*)\.example\.com [NC] 
RewriteRule ^(.*)$ http://example.com/%1/$1 [L,P] 

爲您的特定情況下,將

RewriteEngine on 
RewriteBase/
RewriteCond %{HTTP_HOST} ^tv\.example\.com [NC] 
RewriteRule ^(.*)$ http://example.com/video/$1 [L,P] 

我現在面臨的一個缺點是PHP $ _SERVER URI設置爲轉變的URL不是原單。但這是另一個問題:)

相關問題