看板 PHP 關於我們 聯絡資訊
你要開 rewrite 提供一個像 RewriteRule ^(\w{3,32})$ /link.php?key=$1 [QSA] 這樣的規則 會將 /aaaa 導到 link.php?key=aaaa 再去 sql 裡抓 aaaa 所對應的 url 最後輸出 <meta refresh /> 或 header:refresh 我想原理差不多是這樣吧 ※ 引述《thankQ9527 (謝謝你)》之銘言: : 最近在研究0rz.net 的運作方式,有點小心得了 : 0rz.net的運作方式是,假如有一個網址 : ex: http://www.yahoo.com/a/888888888888888888.html : 經過0rz.net之後,上述的網址會變成 : http://0rz.net/aaaa : 輸入這個網址(http://0rz.net/aaaa)後他會轉到 : http://www.yahoo.com/a/888888888888888888.html : 這個頁面去。 : 我的想法: : 1.自訂一個404錯誤畫面,透過錯誤畫面取得他後方的參數(http://0rz.net/參數)進而比 : 對MySQL然後取得原始網址轉向過去。 : 現在卡在一個地方,就是404錯誤畫面要如何在Apache設定了 : 我出現的問題如下: : 我用ErrorDocument 404 的方式,將404設定為 : ErrorDocument 404 /url.php : 所以任何錯誤都會轉到url.php去 : 假如我打一個網址 : http://test.com/aaa 他會轉到 : http://test.com/url.php : 因為http://test.com/aaa這個網址不存在我也沒在這個網址停留過,而我也不是透過link : 的方式去開啟網頁的 : 所以要在url.php上使用PHP的$_SERVER系列語法就會失效,頂多出現test.com跟url.php : 唯一解決的方法就是 : 假如我輸入 http://test.com/aaa : 他會直接執行url.php而網頁網址一樣是http://test.com/aaa : 這樣才有辦法成功!! : 但我找不到方法 : 目前我成功的地方只有到 : 輸入http://test.com/aaa 之後 : 視窗上網址列的網址一樣是http://test.com/aaa : 但是我在網頁上按內容右鍵,他出現的網址卻是 : http://test.com/url.php : 必須要我在網頁上按內容右鍵出現的網址一樣是 : http://test.com/aaa 才有辦法解決這個問題! : 因此不知道我的Apache該如何設定呢?簡單來說我想寫一個跟0rz.net一樣的功能 : 如果有別的方法不吝賜教。3Q -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.113.158.10
thankQ9527:現在問題不是卡在sql或php的..而是根本抓不到aaa參數 02/02 02:34
drkkimo:你沒看懂他說的嗎? 02/02 06:58
mouse26:9527去查apache的rewrite資料吧..你就會知道原po再說什麼 02/02 14:30
ileadu:沒想到這技術這麼快就被拿到蝦米查碼上縮址應用了 ^^ 02/04 13:32
peterjack:dinos是對的 02/04 21:27
ileadu:沒人說 dinos 錯吧? 是thankQ 沒看懂 dinos 在說啥... 02/05 00:56
thankQ9527:的確是我沒看懂,我用的方法即是Dinos說的 02/06 16:13
thankQ9527:http://34c.cc 02/06 16:13
ileadu:ThankQ 你的縮址 設了密碼 但 username 要打啥? 02/07 00:46