跳到主要內容

將 dreamhost 的PHP檔案大小上傳最大限制調大

技術

發表時間: 2010-11-21 16:06:44

一劃

2010-11-21 16:06:44

首先,要調整 PHP 的檔案大小上傳限制只能在 php.ini 裡變更,但是在 dreamhost 我們不能直接去改他原始的設定,所以要先了解 dreamhost 的個別 php.ini 的設定方法。

設定個別 php.ini 的幾個必要條件

  1. 在 manager domain 裡的 web 設定,PHP Mode 設定為 Fast CGI。
  2. 要使用 ssh 的帳號進行相關設定。

開始設置環境

  1. 在要使用個別 php.ini 的 web 的根目錄下建立 cgi-bin 的資料夾

    $ mkdir $HOME/example.com/cgi-bin

    如果你的 ssh 登入使用者和你 web 的使用者不同,可以直接利用線上 webFTP 來進行。
    權限設為 775 即可。

  2. 複製預設的 php.ini 檔到 cgi-bin 資料夾下

    $ cp /etc/php5/cgi/php.ini $HOME/example.com/cgi-bin/php.ini

    同樣的,如果你的 ssh 登入使用者和你 web 的使用者不同的話,$HOME/example.com/ 請改為絕對路徑,或直接進入該資料夾,就複製到現有目錄即可。

$ cd /home/WEBUSER/example.com/cgi-bin
$ cp /etc/php5/cgi/php.ini ./


3. 建立 script wrapper

$ cat << EOF > $HOME/example.com/cgi-bin/php-wrapper.fcgi
> #!/bin/sh
> exec /dh/cgi-system/php5.cgi $*
EOF

or sh 登入使用者和你 web 的使用者不同

$ cd /home/WEBUSER/example.com/cgi-bin
$ cat << EOF > ./php-wrapper.fcgi
> #!/bin/sh
> exec /dh/cgi-system/php5.cgi $*
> EOF


4. 設定檔案權限

$ chmod 755 $HOME/example.com/cgi-bin
$ chmod 755 $HOME/example.com/cgi-bin/php-wrapper.fcgi
$ chmod 640 $HOME/example.com/cgi-bin/php.ini

or ssh 登入使用者和你 web 的使用者不同

$ cd /home/WEBUSER/example.com
$ chmod 755 cgi-bin
$ chmod 755 cgi-bin/php-wrapper.fcgi
$ chmod 640 cgi-bin/php.ini


5. 設定.htaccess
加入以下幾行

Options +ExecCGI
AddHandler php5-cgi .php
Action php-cgi /cgi-bin/php-wrapper.fcgi
Action php5-cgi /cgi-bin/php-wrapper.fcgi

假如 ssh 登入使用者和你 web 的使用者不同
則用web使用者去修改原有的 .htaccess 或新增

這樣基本上個別 php.ini 的設置就OK了。
接下來改 /home/WEBUSER/example.com/cgi-bin/php.ini 的檔
將 **post_max_size**, **upload_max_filesize** 改成你想要限制值就好了。
基本上 post_max_size 要大於等於 upload_max_filesize ,不過通常設一樣就OK了。

如果還不行,可以在 php-wrapper.fcgi 的執行命令最前面加入一行

export PHPRC=/home/WEBUSER/example.com/cgi-bin

變成

!/bin/sh

export PHPRC=/home/WEBUSER/example.com/cgi-bin
exec /dh/cgi-system/php5.cgi $*



再不行,就到 [http://wiki.dreamhost.com/PHP.ini](http://wiki.dreamhost.com/PHP.ini) 看看吧..![](https://tyh.idv.tw/images/faceSymbol/11.gif)

一劃

2014-10-13 23:15:23

最近Dreamhost的設定方法改了.

原本在 .htaccess 有關 PHP 的設定都 Mark 起來.
針對 php.ini 的設定, 改成在自己目錄下開一個 .php 資料夾, 再看你用的PHP版本, 在 .php 資料夾內開一個 5.3 or 5.4 的資料夾.

在該資料夾內建立 phprc 的檔, 有關的特殊 php.ini 設定就可以在 phprc 裡設定.

這裡的調整檔案大小上傳最大限制, Dreamhost 也有設上限, 最多只能調到64M, 再上去就是無效設定, 會強制用預設的 7M

以我自己本身的例子
先建立 ~/.php/5.3
然後新增並編輯 ~/.php/5.3/phprc
寫進 upload_max_filesize = 64M

就 ok 了


回應文章

按一次 Enter 就會換行。程式碼請用 ```php 這樣的圍欄。