[教學]讓不能外連圖片的空間成為你的圖床

大家一定都有遇過空間不讓你外連圖片的情況,但是這些空間通常都是老字號、以穩定著名,品質快跟付費空間一樣。雖然整體內容是很棒,卻不能外連圖片拿來當作圖床來用,實在有夠可惜的拉。想讓別人羨慕你征服這些空間並把它當圖床嗎?那你就要趕緊靠過來喔~!

著名的免費空間:UlmbZymic,這兩個空間都非常穩定且不會亂刪帳號,想拿來架站卻因為空間有函數、檔案限制只好作罷;想拿來放置圖片當圖床使用,很遺憾一樣也被限制住,不能外連圖片了 (>﹏<)。沒關係!既然空間敢限制我們就有破解的方法,讓你對這些空間重新改觀、愛不釋手。

昨天在免費的喘息上看到網友發的文章,圖床被刪了、有些圖片沒備份,導致現在網站喝北風摟。圖床算是部落格第二重要,找不到一個好的空間來當圖床,你可能要每天向神明祈禱不要掛點瞜~你還在用這種沒有保障又容易被刪帳號的空間當圖床嗎?利用下列方法你就可以擁有穩定的圖床摟。

注意:此方法有可能會導致你被刪空間,請自行評估後果。

第一步:開啟「Notepad++」或「記事本」。

[教學]讓不能外連圖片的空間成為你的圖床-開啟notepad++

第二步複製下列語法,並把語法貼在新文件裡。《備1、2》

<?
$queryStr = $_SERVER['QUERY_STRING'];
if ( !empty($queryStr) ) {
$outFile = $_SERVER['DOCUMENT_ROOT'] .  $queryStr;
if ( !file_exists( $outFile ) ) {
echo 'File Not Found: ', $queryStr;
} else {
header("Cache-Control: public, must-revalidate");
header("Content-Type: image/gif" );
header("Content-Transfer-Encoding: binaryn");
echo file_get_contents($outFile);
}
}
?>

語法轉至喘息網友imbear的文章:玩一玩圖片不外連的空間

[教學]讓不能外連圖片的空間成為你的圖床-貼上語法
第三步:點選「檔案」→「另存新檔」,檔名直接打「index.php」,按「存檔」。
【備註】用在Ulmb時,檔名須存成「load_image.php」。

[教學]讓不能外連圖片的空間成為你的圖床-儲存檔案

第四步:上傳到「圖床的根目錄」即可。《備3》

[教學]讓不能外連圖片的空間成為你的圖床-上傳index.php

第五步上傳圖片,上傳完後就可以外連圖片了《備4、5、6、7》

[教學]讓不能外連圖片的空間成為你的圖床-上傳圖片

【Ulmb外連測試】

Ulmb外連測試

【備註】Ulmb外連圖片在IE底下皆會顯示包子圖,請自行參酌。

【Zymic外連測試】

Zymic外連測試

ps:上述說的Ulmb和Zymic本人測試4個多月,目前空間還是正常運作。

【備1】如果是使用zymic,語法需要稍微修改

:需要把這句

$outFile = $_SERVER['DOCUMENT_ROOT'] . $queryStr;

修改成

$outFile = implode('/', explode('/', $_SERVER['SCRIPT_FILENAME'], -1)) . "/$queryStr";

【備2】如果使用ULMB的話,語法要全部換掉

:把全部的語法換成下面這3行。

<?php
header( 'Location: http://'.$_SERVER["SERVER_NAME"].'/'.$_GET["file"] ) ;
?>

【備3】如果根目錄已經有架站了(已經有index.php),一定要替代它嗎,有別的方法可行嗎?

請直接把外連的index.php上傳到你放圖片的那個資料夾裡或者隨便找個資料夾塞也可以,只是會影響外連網址的美觀度而已

【備4】如果使用VP後台,外連的圖片網址是

http://yourdomain/?/圖片位置/圖名.副檔名

  • 範例:http://imbear.ihost.tw/?/jpg/long.jpg
  • 如果你的圖片也是在根目錄,那麼「/圖片位置」就不需要打了。

【備5】如果使用ULMB,外連的圖片網址是

http://yourdomain/load_image.php?file=圖片位置/圖名.副檔名

  • 範例:http://shachi.ulmb.com/load_image.php?file=jpg/1.jpg
  • 你的load_image.php一定要在根目錄。
  • 如果你的圖片也是在根目錄,那麼「/圖片位置」就不需要打了。

【備6】如果使用zymic,外連網址是

http://yourdomain/?/圖片位置/圖名.副檔名

  • 範例:http://ml120tw.zzl.org/?/jpg/2.jpg
  • 如果你的圖片也是在根目錄,那麼「/圖片位置」就不需要打了。

【備7】如果外連的index.php放在其他資料夾內(非根目錄),外連的圖片網址是

http://yourdomain/外連index.php所在位置/?/圖片位置/圖名.副檔名

  • 範例:http://cica.org.ru/img/?/img/logo.jpg
  • 如果你的圖片也是在根目錄,那麼「/圖片位置」就不需要打了。

本文作者: 有殺氣追殺你

個人介紹 | 查看其他文章

相關文章
  • 暫無相關文章
一般留言(28)
  • @mo:
    那個 /?/ 的用途是傳遞變數
    在HTTP傳輸協定中的GET部分
    $_SERVER['QUERY_STRING']傳回來的內容就是?後面的字串
    例如 http://mywebsite.tk/?hello
    $_SERVER['QUERY_STRING']的內容會是hello
    如果是要傳多個變數的話
    例如 http://mywebsite.tk/?page=1&type=show
    那麼 $_GET['page'] 會是 1
    $_GET['type']會是show
    詳細的可以搜尋PHP教學

    殺氣說:
    感謝小喵的補充,不愧是大大 ((一鞠躬
    又學到一課了

  • 25
    SirMarine

    補充一點

    我有懷疑是不是因為外連導致違反

    因此我乾脆直接在原空間建一個網頁,把圖片都放到該網頁上顯示

    但是依舊是過沒幾天就出現那樣的訊息

    殺氣說:
    應該不太可能吧,有人這方法已經用很久了,空間還存活

  • 24
    SirMarine

    可否請大大提供幾個國外的免空呢?
    我使用byethost免空,只要放幾張圖片,然後用您的方法外連,過沒幾天就出現

    This account is currently suspended / under review, this can be caused by over using quotas, or breaking the Terms Of Service.

    Please contact support for more information.

    很奇怪的就是流量200GB耶,怎麼可能因為幾張4.5百KB或是最大1MB的圖片就爆了…

    就是因為這樣,才想要找T35這種沒有限制流量的來用…

    殺氣說:
    其實大概30GB左右應該很夠你用了
    空間很難介紹給你,因為穩定與否我不能保證
    如果你不嫌麻煩的話可考慮Sitemix,但用FTP上傳時要掛VPN

  • 23
    SirMarine

    首先是原圖連結:http://aquamarinesf.t35.com/image003.jpg
    t35空間我試過三種方法:
    第一種:
    http://aquamarinesf.t35.com/index.php?/image003.jpg
    使用後出現:Warning: file_exists() [function.file-exists]: open_basedir restriction in effect. File(/usr/local/apache2/htdocs/image003.jpg) is not within the allowed path(s): (VIRTUAL_DOCUMENT_ROOT) in /home/freehost/t35.com/a/q/aquamarinesf/index.php on line 9
    File Not Found: /image003.jpg stats

    第二種:
    http://aquamarinesf.t35.com/index2.php?/image003.jpg
    使用後出現:
    無法顯示錯誤的圖片「http://aquamarinesf.t35.com/index2.php?/image003.jpg」。

    第三種:
    http://aquamarinesf.t35.com/load_image.php?file=/image003.jpg
    使用後可以直接連結顯示,但是放到論壇之類的地方,依舊顯示不了。
    如果你的暫存檔因為使用第一個直接連接導致已經讀取到圖片,那顯示這個會顯示出來…
    這邊有另一張圖片可以測試
    http://aquamarinesf.t35.com/load_image.php?file=/image006.jpg
    這是直連檔
    http://aquamarinesf.t35.com/image006.jpg

    殺氣說:
    我想原始方法應該都可以成功
    但有個問題那就是T35的PHP安全設置太高
    他的php.ini設定會和語法起衝突,因此才會出現錯誤
    免空這麼多,換一家即可,何必堅持同一家呢?對不對

  • 22
    SirMarine

    請問T35空間也可以使用嗎?

    殺氣說:
    這我沒測試過
    建議你自己去嘗試看看

  • 21
    mo

    謝謝提醒,已經可以了
    不過有一個小問題想要問一下
    為什麼中間要加上/?/

    殺氣說:
    不會
    根據我自己的猜測應該是指定圖片去運行index.php裡的語法
    ?代表的是index.php
    ———————————–
    實際意義我也不太清楚
    如果有機會可以問imbear看看
    因為不管是語法還是用法都是他告訴我的

發表留言