php無法執行system()函數的問題分析

來源:互聯網
上載者:User
關鍵字 php無法執行system()函數的問題分析

PHP無法執行system()函數,可能有以後幾種可能。

首先請開啟錯誤時數,根據錯誤才好判斷原因:開啟php.ini中的 display_errors = On

在ISAPI模式下修改php.ini要重起WEB服務。

錯誤分析:

1、Warning: system() has been disabled for security reasons

該錯誤是由於伺服器安全配置將system函數關閉了,編輯php.ini尋找 disable_functions 將等號後面的 system 去掉即可。

2、Warning: system() [function.system]: Unable to fork

該錯誤是由於當前網站的運行帳號無法訪問cmd.exe,找到windows\system32\cmd.exe 屬性,安全,添加當前網站的運行帳號許可權,或 users組許可權即可。

3、在web訪問下執行沒有任何響應也不報錯,使用php cli命令列執行卻可以正常返回結果

該錯誤一般由於WINDOWS系統路徑引起,你的程式中大概使用了絕對路徑去訪問程式比如:

system('D:\server\DLL\IECapt.exe --url=http://tech.cncms.com --out="D:\web\tt.fei.cn\htdocs\ttt\tech.png"');

此時用命令列執行結果OK,但用WEB訪問就是空白也沒錯誤。

修正方法,將檔案的訪問路徑改為相對即可:

將IECapt.exe 複製到你的網站程式目前的目錄下,並將代碼改為:

system('IECapt.exe --url=http://www.baidu.com --out=t/tech.png');

再次訪問頁面,OK,結果出來了。

  • 相關文章

    聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.