遇到了兩個因爲php.ini配置錯誤致使的報錯:ajax圖片上傳報錯和exec報錯php
首先第一個:css
在作一個用ajax圖片上傳的功能中,php報了這樣一個錯誤:File upload error - unable to create a temporary file;html
而後百度了下,發現是因爲php.ini配置文件的upload_tmp_dir的配置沒有處理好.前端
因而百度下了這個:供參考下ajax
1.由於php.ini中沒有設置上傳的臨時文件,默認爲系統的臨時文件地址。
2.若是沒有權限去讀系統的臨時文件目錄的話就會產生上述錯誤。
解決的方法就是去掉 upload_tmp_dir 前面的分號而後設置臨時文件目錄。
3.若是是WIN系統,設置的臨時文件夾的全部父文件夾要有「IUSR_*****(Internet來賓帳戶)」的「列出文件夾目錄」權限,建議把這個臨時文件夾建立在PHP目錄中。shell
第二個:今天在壓縮前端css文件時,發現壓縮不了,程序和權限都正確,而後看了下,是因爲php.ini 的disable_function 這個配置,致使了在執行exec壓縮時報錯!安全
出於安全的緣由,服務器是不容許php或者其餘語言執行exec命令的,當你有特殊須要php在服務器執行exec命令時,你須要設置兩個地方,否則就沒法執行成功服務器
一、修改php.ini學習
找到php配置文件php.ini,若是是用星外php自動安裝程序配置php環境,這個文件就在C:\WINDOWS\這個目錄裏。.net
在文件裏搜索「disable_functions」,找到它後把「exec」、「shell_exec」去掉,而後保存文件。
二、修改cmd.exe文件屬性
進入C:\WINDOWS\system32,找到cmd.exe這個文件,右鍵->屬性,在「安全」設置裏添加Internet 來賓帳戶,也就是IUSR_******那個帳戶,而後賦予「讀取與運行」、「讀取」的權限。
這樣設置完成後,php就能夠在服務器執行exec命令了。