2013-04-29 138 views
0

林嘗試找到良好的解決方案,以隱藏真實的流媒體鏈接,即時通訊嘗試用PHP,但有流問題,以這種方式就像重寫URL,從子域到另一個子域

http://site.com/player/stream.php?p=[file path]&f=filename.flv&t=<? echo md5(session_id().$_SERVER['REMOTE_ADDR'])?> 

也許重寫URL與htaccess的是更好的解決方案?像這樣

http://media.site.com/videos/0412/125843213/125843213.flv [org. file] 

重寫

http://s1.media.site.com/0412/125843213.flv 

..任何想法如何做呢?或者可能是更好的回到PHP ...?

回答

1

在根目錄中的htaccess文件,或者從你的Apache配置:

RewriteEngine On 
RewriteBase/
RewriteRule ^videos/(\d+)/(\d+)/(\d+)\.flv$ http://s1.media.site.com/\1/\3.flv [R=301,L,QSA] 

話雖如此,一旦你有一個重寫,那麼你的「真實網址」那你要隱藏已成爲重寫的網址。您將能夠使用任一網址訪問該文件。基本上,任何用戶都可以訪問其中一個訪問該文件的URL,因此它不再安全。

另外,由於主機發生變化,您將向您的服務器發送2倍的請求數量。

很好的理由使用重寫:

  • SEO
  • 單一入口點(如在CakePHP中,笨等 - 的index.php)
0

請問一個iFrame到服務器上的另一個PHP腳本使用處理這些重定向:

header("Location: $php_url_var"); 
exit; 

或JavaScript window.location的工作?

http://www.w3schools.com/js/js_window_location.asp

好像你在做什麼,最簡單的選擇。如果你不熟悉,我可以舉一個例子。

+0

JS,即時通訊與jwplayer – 2013-04-29 16:19:38

+0

弗蘭克我的工作不需要重定向,但需要從我的文件中隱藏真實的URL .. – 2013-04-29 16:21:46

+0

使用json_encode()中包裝的utf8_encode()怎麼樣?如果需要,甚至可以使用編碼的md5散列。 – Frank 2013-04-29 16:56:23