Входящее письмо на PHP: нужно писать вложения в веб-каталог - PullRequest
7 голосов
/ 18 апреля 2011

У меня есть PHP-скрипт, который принимает все электронные письма (подстановочные знаки) на мой домен и вставляет данные в MySQL.

В начале скрипта есть эта строка:

#!/usr/bin/php -q

Это выглядит как обычный скрипт PHP.Часть, которая записывает вложения на диск, похоже, работает, но разрешения для новых папок, в которых они хранятся, были созданы пользователем "nobody".

Как я могу редактировать разрешения так, чтобы после записи этих файловна диск, к ним может обращаться пользователь веб-сервера / веб-сервера?

Спасибо за помощь!

(сервер Fedora 14 Linux, Postfix)

Ответы [ 4 ]

2 голосов
/ 18 апреля 2011

Вы можете предварительно настроить операции файловой системы по FTP, чтобы у вас были те же разрешения, что и у вашего пользователя. Лучше тогда дать всем пользователям PHP доступ к вашим файлам на сервере. http://php.net/ftp

0 голосов
/ 20 апреля 2011

Вам нужно sticky bits на уровне файлового сервера.

установка битов sui / sgid

0 голосов
/ 18 апреля 2011

Я предлагаю вам сделать следующее:

chown -R apache: apache имя_каталога

Это потому, что PHP работает как пользователь веб-сервера (я считаю, что это apache на Fedora).В противном случае, если вы используете другой веб-сервер, измените владельца файлов на пользователя этого веб-сервера (вы обязательно найдете это где-нибудь в файлах конфигурации сервера).

0 голосов
/ 18 апреля 2011

От какого пользователя работает PHP? PHP имеет функцию chmod , но вы не можете повысить привилегии выше, чем пользовательский PHP.

Если это не сработает, не могли бы вы указать каталог вложений, который будет принадлежать какому-либо пользователю, под которым работает PHP? *

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...