2010-07-28 18 views
5

Sono nuovo nell'apprendimento di PHP e quindi ho installato l'ultima versione (5.3.3) e sto scrivendo del codice. Ho eseguito in questo errore:sostituzione php per safe_mode

PHP Warning: curl_setopt() [function.curl-setopt]: CURLOPT_FOLLOWLOCATION cannot be activated when safe_mode is enabled or an open_basedir is set in C:\Rush\dev\personal\Numina.Framework\Development\PHP Library\Numina.Framework\clsHttpUtil.php on line 47

Quando guardo la documentazione per safe_mode mi dice che è deprecato. perché è stato deprecato e cosa posso fare per correggere questo errore?

risposta

4

safe_mode aveva buone intenzioni, ma è stato implementato in modo non uniforme. Era deprecato perché causava più problemi di quanti non ne risolvesse e non era una soluzione di sicurezza generale. Esistono modi migliori per ottenere protezione dell'ambiente applicativo ora (come FastCGI, suexec, chroot, jail, VPS ...)

È possibile correggere l'errore disattivando safe_mode e progettare il codice in modo da non presupporre che sia in uso o in disuso. Si prega di notare che safe_mode è stato rimosso come da PHP 5.4.0.


Ecco more information on why CURLOPT_FOLLOWLOCATION was disabled quando safe_mode o open_basedir sono a tutti gli effetti. Problemi come questo sono uno dei motivi principali per cui safe_mode è probabile che venga rimosso completamente da PHP.