| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > PHP: Общие вопросы > UID скрипта и файлов/дирректорий |
| Автор: CTYDEHT 5.5.2005, 14:46 | ||
| Есть такая проблемка. На сервере включен safe_mode, и этот safe_mode проверяет uid каталога и скрипта, который собирается что-то писать в этот каталог. Дело в том, что это uid не совпадают. Когда создается каталог (с помощью этого же скрипта), то uid для него выставляется 99, хотя сам php выполняется под uid 32260. Как следствие несовпадания uid - не разрешение что-либо делать в этом калалоге. Мне нужно писать скрипт, который будет работать практически на любом сервере поэтому изменения настроек сервера по минимуму. Вопрос: Это нормально, что выставляется "чужой" uid? (я слышал версию, что при safe_mode это нормально, т.е. так на всех серверах) Это правда? Также буду признателен каждому, кто проведет следующий тест: Если у вас есть какой-нибудь SHARE сервер, создайте в корневой дирректории папку и настройте права для нее 777. Зтем закачайте в нее php файл со следующим содержанием и выполните:
Должна создаться еще одна папка в этой и файл в ней. Затем напишите в этой теме: - дало ли вам что-то вроде Warning: fopen(): SAFE MODE Restriction in effect. The script whose uid is... - что было написано в Read from file: (долно быть "test file text") - включен или выключен у вас safe_mode (это найдете в phpinfo()) |
| Автор: Opik 5.5.2005, 14:51 |
| Менять владельца: chown(), вот только при safe_mode не помню работает или нет. Выставляется не "чужой"... у PHP uid толи апача, то ли... ну вообщем у меня при safe_mode = on работать с созданным скриптом каталоге не получилось. |
| Автор: CTYDEHT 5.5.2005, 15:43 |
| Opr, ты все таки не ответил.. это нормально что выставляется другой uid или нет? и... проведи этот тест, если не сложно... |
| Автор: Opik 6.5.2005, 13:21 |
| CTYDEHT Тест проводить вовсе не обязательно, ибо на серваках где safe_mode = on именно такие предупреждения и будут, да это нормально. |
| Автор: CTYDEHT 10.5.2005, 12:43 |
| хорошо... тогда такой вопрос... я решил попробовать делать через FTP. ftp_mkdir() делает папку со стандартными правами (755), а мне нужно 777. umask(000) ничего не меняет... оно по-моему только для mkdir(). Можно как-то менять права на папку, используя php функции, которые работают с ftp ? |
| Автор: CTYDEHT 10.5.2005, 17:31 | ||
| как изменять права через ftp с помощью php я разобрался... но возникла другая проблема... А вернее вопрос... Функция copy() копирует файлы... а существует ли функция в php, которая копирует дирректории (именно копирует или перемещает, а не создает)... Пробовал:
указывая в источнике на папку... но в назначении оказался файл... |
| Автор: Opik 11.5.2005, 08:26 | ||
http://ee.php.net/manual/en/function.ftp-chmod.php |