VVVas, полностью согласен что фигурнов правильно и нужно, просто полагаю что мой уровень понимания it, не ниже уровня книги фигурнова.
VVVas, так я так и говорю, я не понимаю поэтому и спрашиваю что-бы понять.
Собственно если подходить строго - пользователь не читает php файл, и если еще более строго, как я понимаю, php это не страница, это программа, интерпретаторного типа, выполняя которую php-сервер формирует html страницу которую уже читает пользователь, а пользователь только указывает серверу какой php нужно выполнить.
Кстати посмотрел анализатором, пользователь действительно запрашивает index.php, но в ответ ему летит сформированная html страница, и было бы странно если бы было иначе, т.е. пользователь всего лишь указывает на php программу серверу.
фрагмент пакета запроса
...
HTTP Section: 438 bytes
Hyper Text:
GET /index.php HTTP/1.1
Hyper Text Continuation: Accept: */*
Hyper Text Continuation: Accept-Language: ru
...
ответ
...
HTTP Section: 1460 bytes
Hyper Text: HTTP/1.1 200 OK
Hyper Text Continuation: Date: Wed, 18 Jan 2006 07:17:11 GMT
...
Hyper Text Continuation: Content-Type:
text/html
...
Из учебника по php:
Рассмотрим процесс выполнения php-сценария при обращении броузера к серверу. Итак, вначале броузер запрашивает страницу с расширением .php, после чего php-сервер пропускает программу через машину PHP и выдаёт результат в виде html-кода. Причем, если взять стандартную страницу HTML, изменить расширение на .php и пропустить её через машину PHP, последняя просто перешлёт её пользователю без изменений.
VVVas, да, именно так, пользователь видит только html файл. Да, если не будет php-машины пользователь скачает php-файл, но мы же говорим о случае когда есть php-машина, и когда пользователь не скачивает php-файл, а когда php не файл а программа для php машины.
Хорошо, пусть будет так, допутим php-сервер при вызове пользователем php программы считает что пользователь ее читает и нужны права на чтение.
Но зачем права на чтение всем на config.php - 0444 ???
Уж его то точно пользователи не читают и даже не вызывают ? или считается что если config.php вызван из php-файла который считается
читает пользователь то и он читается ?
И так же продолжаю непонимать какие должны выставляться владельцы на файлы и каталоги, и должны ли вообще ?
Нужно ли что-то выставлять с помощью chown на каталоги и файлы когда буду переносить на хостинг ? сейчас всё на локале (win-denver)
Добавлено спустя 5 минут 29 секунд:
VVVas, я кажется понял о чем вы, вы считаете что пользователь читает именно, скажем index.php, просто переработанный ?
Но в любом случае, то что скачивает пользователь, это скажем так виртуальный файл, его ведь на сервере нет, он формируется для каждого отдельного случая, и связан он с php программой весьма относительно. Я не улавливаю логики, зачем именно на файл index.php ставить права на чтение ? ведь пользователь всего лишь указывает серверу что index.php нужно запустить, даже не пользователь его запускает.
Добавлено спустя 1 час 45 минут 22 секунды:
вроде разобрался
нашел тут
http://www.onlamp.com/pub/a/php/2003/02 ... tions.html
Before I begin to discuss the PHP permission functions, I will explain some common permission-related problems which occur with PHP scripts. Like all applications in a Unix environment, PHP programs are run on behalf of a particular user. If a PHP script is executed from the command line (for instance, as a shell script), it will run with the permissions of the user who started the script. For web servers, however, your PHP scripts run as the same user as the web server runs as. Under most system configurations, web servers run as the user nobody, which has minimal permissions to access the file system.
что-то подобное встречали на русском, но там было как то неоднозначно понятно
т.е. суть в следующем
php-программы запускаются php-машиной, которая имеет только права - "все" (типа защита всего остального unixа)
но по сути, это не запуск а чтение php-файла, соответственно права на чтение должны быть для всех, равно как и на все конфигурационные файлы
так же должны быть и права записи для всех на каталог в который php-машина захочет что-нить записать
думаю пройдет некое время пока я смогу это воспринимать без содрогания
Добавлено спустя 24 минуты 1 секунду:
кстати
о различиях в правах на разные типы файлов, например разные права на cgi и php тут
http://www.holm.ru/faq/scripts.shtml