最近在知識+看到一個問題 「t35無法用php寫的程式上傳檔案嗎?」,看過問題內容後原本以為只是「register_globals預設為off」的問題而已,後來好奇問了一下原提問者其它的免費空間用的好好的,為什麼要給到「t35」呢?後來提問者回答因為「t35」提供「無限的免費空間」,YOGO於是好奇的去看了一下「t35」的免費方案(http://www.t35.com/web-hosting/),果然免費方案擁有無限空間,不過頁尾會有廣告及部份php函式限制,反而付費方式有1GB與4GB容量大小的限制,這麼好的免費空間條件不用就太可惜了。
再來YOGO去「t35網站的常見問題(http://www.t35.com/support/helpdesk/knowledgebase.php?category=2)」,看一下它免費空間的使用限制,「t35」的免費方案是「不提供Mysql空間、mail寄送服務與部份PHP功能禁用」;不過看在它無限空間的份上,這些限制倒還算可以接受,因為網路上有其它純粹提供mysql免費空間的網站可申請,只要再搭配 「ADODB」 就可以解決t35免費方案不提供mysql空間的問題,至於無法使用mail函式寄信的問題可以透過PHPMailer解決,關於PHPMailer的用法可參考一下YOGO之前寫的「用PHP寄MAIL的方法」與「[PHP] 如何利用 Pchome 的SMTP 發信(使用PHPMailer)」那二篇文章。
不過後來知識+的原提問者又提出了「麻煩幫忙看一下php上傳程式碼,要怎麼改?」這一篇問題,YOGO看完之後,覺得排除「register_globals預設為off」的問題外,只剩二個可能,一個是PHP的環境禁止檔案上傳,也就是php.ini檔中的「file_uploads」設定為「off」,另一個就是「move_uploaded_file函式禁用」,關於這部份請參考「禁止執行某些 PHP 指令」這篇文章;為了證實實際的情況到底為何,YOGO決定申請一個「t35」免費空間來測試;所先在網址列輸入「www.t35.com」,然後分別輸入「帳號」、「密碼」然後按一下「Start Your Website」,如下圖。
再來依序輸入「帳號」、「密碼」、「再次確認密碼」、「你的名字」、「你的姓氏」、「E-mail」、「所在國家」,然後按下「Create My Site」,如下圖。
再來去你剛填的mail收取「t35」寄來的認證信,然後點選信中的認證連結,如下圖。
再來回到「t35」網站,點選右上方的「Member Login」連結,如下圖。
分別輸入你的「帳號」、「密碼」,然後按一下「Login」,如下圖。
在「Language」的地方下拉選「Traditional Chinese」,如下圖。
可以看到管理介面以變成中文,如下圖。
再來我們要用「iProber探針」來測試「t35」的虛擬主機設定,關於「iProber探針」的部份可參考「PHP探針iProber-虛擬主機租賃必備 」這篇文章;再來在「iProber-big5.php」這支程式的右方按一下「開啟」,如下圖。
依「iProber探針」所顯示的結果看來,「t35」的免費方案是「不提供檔案上傳」功能的,再來按一下探針資訊中的「phpinfo」觀看一下「t35」免費方案主機的詳細資料,如下圖。
首先可以看到「t35」的免費主機方案中,「register_globals」設定為確實為「off」,這一點倒不意外,因為安全性的問題PHP官方從PHP 4.2.0以後的版本「register_globals預設都為off」,如下圖。
再來可以看到「file_uploads 」這一項設定中,其設定值為「Off」,這代表著「t35」的免費主機方案並「不允許透過PHP上傳檔案」,如下圖。
再來可以看到「t35」的免費主機方案中,禁用的PHP函式還真不少,大部份常用的函式都被禁止使用了,而且連「move_uploaded_file」也被禁用了,想當然「t35」的免費主機方案是不可能可以上傳檔案的,如下圖。
綜合以上各點YOGO得到的結論就是「天下沒有白吃的午餐」,畢竟「t35」也是虛擬主機商,也是靠租賃虛擬主機在賺錢的,YOGO還在想說怎麼可能免費方案空間是無限大,反而付費方案有空間限制,就如同「郭董」說的「魔鬼都藏在細節裡」;本以為「t35」的免費主機方案中只是不提供「database與mail函式及與系統安全性的php函式禁用」而已;想不到測試的結果是「t35」跟「hinet」提供的免費純HTML空間差不多,雖然「t35」有提供PHP的使用,但卻也禁用了一大堆常用的PHP函式,所以有PHP跟沒有差不多;其實「t35」的免費主機方案限制並不止YOGO列出的部份而已,若有興趣的朋友可以去「t35」的官網看一下它的常見問題說明。
如果覺得這篇文章對您有所幫助,在觀看完文章之餘,希望能點選下方方廣告,當作是對YOGO的支持,讓YOGO更有寫作的動力。
沒有留言:
張貼留言