2017年9月19日 星期二

php.ini 設定筆記

Apache: 預設安裝目錄: /etc/httpd/
PHP:php.ini 路徑: /etc/php.ini

/etc/init.d/httpd restart # 重新啟動 -- 更新後的指令
(以CentOS 6.0為例)


小技巧
要知道自己php.ini這個檔案放在伺服器的路徑如何
可以在網頁中加入以下代碼並執行

<?php phpinfo(); ?>


※新安裝後需在php.ini做的設定 (/etc/php.ini)
(1)  short_open_tag = On

1.php 多只能上傳20個檔案 的 php.ini 解決方案

 php 5.2.12 及以上的版本,有個限制是一次最多只能上傳20個檔案而已

該參數 在 php.ini 裡沒有的,也就是 max_file_uploads , 預設值是 20
解決的方法就是在 php.ini  新增 
max_file_uploads = 9999


2.PHP上傳檔案的限制與修改

製作PHP網頁也很常用到的一個功能就是利用表單上傳檔案
尤其是像自製相簿、影音的話
檔案輕則1~5MB
大的話20MB以上都有
然而Apache本身是有限制檔案上傳的
包括檔案大小、上傳時間是否會time out等等的

所以在製作前
要從php.ini來作修改:

(可以從程式集裡的AppServConfiguration ServerPHP Edit the php.ini)
(或是直接到C槽的windows資料夾裡的php.ini)
php mailer

要修改的包括以下幾項
max_execution_time
max_input_time
memory_limit
post_max_size
upload_max_filesize
default_socket_timeout
mysql.connect_timeout
可以利用 Ctrl + F 在php.ini裡一項一項尋找

1. max_execution_time
Script執行時間上限(單位:秒)
把數字改成 max_execution_time = 300
PHP上傳檔案的限制與修改
2. max_input_time
Script處理資料時間上限(單位:秒)
把數字改成  max_input_time = 300
3. memory_limit
系統記憶體(注意,這個的值一定要設比下面兩項的值都大)
把數字改成 memory_limit = 800M
4. post_max_size
使用表單的file欄位時是用POST傳值
這個可設定POST發送時的容量
把數字改成 post_max_size = 200M
5. upload_max_filesize
單次上傳檔案容量
把數字改成 upload_max_filesize = 200M
PHP上傳檔案的限制與修改
6. default_socket_timeout
Socket無回應斷線時間(單位:秒)
把數字改成 default_socket_timeout = 300
PHP上傳檔案的限制與修改
7. mysql.connect_timeout
無回應斷線時間(單位:秒;-1代表不斷線一直等)
把數字改成 mysql.connect_timeout = -1
PHP上傳檔案的限制與修改
8. 安裝GD庫 (製圖、QR code)
yum -y install php-gd

沒有留言:

張貼留言