2011-07-26 73 views
1

我想知道是否有方法通過使用PHP代碼編輯disable_functions(以便啓用exec()函數),或者只是以不涉及訪問php.ini文件的方式?如果是這樣,那會是什麼?我可以使用PHP代碼修改disable_functions,還是以不涉及修改php.ini的方式進行修改?

+0

您可以使用[per-directory ini文件](http: //php.net/configuration.file.per-user),這取決於你的PHP版本。我不知道這是否會允許你重寫'disable_functions()'列表;谷歌似乎建議你可以除了'exec()'。 (留下評論,因爲我不知道這是否會有幫助) – CanSpice

回答

4

我想知道是否有編輯disable_functions選項的方法通過使用PHP代碼(從而使exec()函數),

沒有,因爲這將使disable_functions完全無用的:其出於安全原因,但安全性在哪裏,每個人都可以改變?

或只是以不會訪問php.ini文件的方式?

沒有。

如果是這樣,那會是什麼?

改變主機,我猜。

+1

:(噢,謝謝你的幫助! – Alper

+0

@Jacob:記得接受答案,如果它解決了你的問題http://meta.stackexchange。 COM /問題/ 5234 /如何-不接受-的回答工作 – KingCrunch

0

如果你的服務器是 suphp啓用如果PHP編譯爲CGI &

的託管商未明確禁止的使用本地的php.ini文件中,

那麼你會能夠使用本地php.ini文件覆蓋甚至disable_functions

在您的網站的文檔根目錄中添加一個包含所有要求的php.ini文件。 我們建議您使用同一臺服務器作爲模板php.ini文件使用的全球性的php.ini,然後修改行 -

disable_functions選項

,使高管不存在。 這將起作用,因爲只要您將一個本地php.ini放置在支持suphp的服務器上,域就會停止使用全局php.ini