Composer install出現錯誤:The Process class relies on proc_open, which is not available on your PHP installation.

今天在部署項目的時候,使用Composer安裝需要的插件時出現了一個第一次見的錯誤,經過網上搜尋解決方式時,才發現自己的PHP知識只是很基礎,一個很普通的配置竟然從來沒有接觸過。

如果PHP文檔熟悉的話,應該會知道proc_open實際上是一個函數,是PHP用來和shell交互的函數,一般如果讓PHP可以直接操作系統的函數的話,是非常不安全的。所以,在PHP配置文件上有對這些不安全的函數作出保護,如果有需要的時候,可以根據開發需求作出修改配置。

解決方法:在php.ini配置文件中,找到disable_functions參數,會看見proc_open函數被禁用了,只要把這個函數名稱刪除便可。

disable_functions = passthru,exec,system,chroot,scandir,chgrp,chown,shell_exec,proc_get_status,popen,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,stream_socket_server

發表迴響

你的電子郵件位址並不會被公開。 必要欄位標記為 *

*

驗證碼 * Time limit is exhausted. Please reload CAPTCHA.

這個網站採用 Akismet 服務減少垃圾留言。進一步瞭解 Akismet 如何處理網站訪客的留言資料