Случај 3: поставување doc_root или user_dir
Почист и полокален преглед на PHP референцата, со задржана структура од PHP.net и подобра читливост за примери, секции и белешки.
Случај 3: поставување doc_root или user_dir
Референца за `security.cgi-bin.doc-root.php` со подобрена типографија и навигација.
Случај 3: поставување doc_root или user_dir
To include active content, like scripts and executables, in the web server document directories is sometimes considered an insecure practice. If, because of some configuration mistake, the scripts are not executed but displayed as regular HTML documents, this may result in leakage of intellectual property or security information like passwords. Therefore many sysadmins will prefer setting up another directory structure for scripts that are accessible only through the PHP CGI, and therefore always interpreted and not displayed as such.
Вклучувањето на активна содржина, како скрипти и извршни програми, во директориумите на веб-серверот понекогаш се смета за небезбедна практика. Ако, поради некоја грешка во конфигурацијата, скриптите не се извршуваат туку се прикажуваат како обични HTML документи, ова може да резултира со протекување на интелектуална сопственост или безбедносни информации како лозинки. Затоа, многу системски администратори претпочитаат да постават друга структура на директориуми за скрипти што се достапни само преку PHP CGI, и затоа секогаш се толкуваат и не се прикажуваат како такви. doc_root Исто така, ако методот за осигурување дека барањата не се пренасочуваат, како што е опишано во претходниот дел, не е достапен, неопходно е да се постави скрипта
што е различна од коренот на веб документите. doc_root во
Погледнете го и поглавјето заКоренот на документите на PHP скриптите може да го поставите со директивата за конфигурација
PHP_DOCUMENT_ROOT, или можете да ја поставите променливата на околината CGI
. Ако е поставена,
doc_root верзијата на PHP секогаш ќе го конструира името на датотеката за отворање со ова user_dir
и информациите за патеката во барањето, така што можете да бидете сигурни дека ниту една скрипта не се извршува надвор од овој директориум (освен за
подолу). user_dir. Кога user_dir Друга опција што може да се користи овде е
doc_rootе одштиклирана, единственото нешто што го контролира името на отворената датотека е http://my.host/~user/doc.php . Отворањето на URL како ~user/doc.php under
doc_root не резултира со отворање датотека под домашната директорија на корисникот, туку датотека наречена~]).
Враќа user_dir (да, име на директориум што започнува со тилда [ public_phpе поставено на пример http://my.host/~user/doc.php , барање како doc.php ќе отвори датотека наречена public_php под директориумот наречен /home/userпод домашната директорија на корисникот. Ако домот на корисникот е
/home/user/public_php/doc.php.
user_dir експанзијата се случува без оглед на doc_root поставката, така што можете одделно да ја контролирате коренската папка на документот и пристапот до корисничката папка.