Si vous souhaitez restreindre PHP propre répertoire personnel de chaque utilisateur que vous avez besoin d'une configuration de PHP dans lequel:
- PHP fonctionne avec les informations d'identification utilisateur
- PHP accepte une configuration
par utilisateur un cas typique est un CGI (ou FastCGI) configuration, plutôt que de courir PHP comme module Apache. Ensuite, vous pouvez fournir un fichier php.ini personnalisé pour chaque utilisateur.
BTW, je ne l'ai pas testé, mais peut-être open_basedir = "~"
fonctionne comme prévu ...
====== ====== EDIT
Quelques précisions qui découlent de la OP de commentaire:
shells Unix, "~" est synonyme de "répertoire personnel de l'utilisateur actuel" il est donc "/ var/home/john" si vous êtes john et il est «/var/home/michael "Si vous êtes Michael. "var/home/~ /" n'a pas de signification particulière: c'est juste un répertoire qui s'appelle ~.
De nombreux programmes utilisent cette convention shell. Je ne sais pas si PHP le fait. CGI permet d'exécuter des programmes arbitraires sur le serveur afin qu'il soit moins sécurisé que le HTML statique de la même manière qu'un skateboard est moins sécurisé qu'une navette spatiale. Mais nous ne parlons pas d'exécuter des programmes arbitraires: nous parlons d'exécuter l'interpréteur PHP. Ce sera aussi sûr que PHP et votre environnement.
Si vous êtes intéressé (e) par le sujet, Google pour FastCGI (une implémentation CGI avec des performances améliorées). De nombreux hébergeurs l'utilisent.
J'ai testé open_basedir = 'var/home/~ /' ne fonctionnait pas. Merci pour votre réponse. Souhaitez-vous envoyer une URL d'aide pour l'installation CGI pour fournir php.ini personnalisé pour chaque utilisateur. Dernière question: J'ai entendu dire que CGI avait des problèmes de sécurité. Est-ce vrai ? Merci encore. – ONSC
Merci beaucoup. – ONSC