2012-06-03 2 views
2

На моем (общем) веб-хосте я использую curl и fopen PHP для загрузки и сохранения удаленного XML-файла в определенный каталог. Системе необходимо прочитать и выполнить ее позже. Прямо сейчас, я создал каталог заранее (разрешения: 777), и система может записать XML-файл в каталог.PHP: напишите удаленный файл в каталог, без chmod 777

Я боюсь, что предоставление разрешений кому-либо читать, писать и выполнять является угрозой безопасности. Поэтому у меня есть вопросы:

  1. Устанавливает ли chmod на 777 риск для безопасности в этом случае?
  2. Есть ли способ достичь желаемых результатов без установки chmod на 777?

(Так как я новичок, я (пока) знакомы с пользователями файлов, групп файлов и права доступа к файлам. Не является ли способ, что только «система» умеет читать, исполнять и писать ?)

+0

Как вы создали справочник? FTP, панель управления, доступ к оболочке? Вы пробовали, если он работает, если вы chmod его на '0755' вместо' 0777'? Ваш PHP-код, вероятно, будет работать как тот же пользователь, что и владелец каталога (т. Е. Пользователь, которым вы создали каталог как). – lanzz

+0

Я создал каталог через FTP. Chmod 0755 возвращает ошибку разрешения при доступе к ней через PHP-страницу. PHP временно доступен для тестирования в целях тестирования. – arothuis

ответ

2
  1. Вы должны избегать 777 ALLtogether.
  2. Существует способ. Такие проблемы лучше решать с помощью chown, чем chmod. Один из способов - убедиться, что пользователь, который пишет файлы (обычно apache или www), принадлежит группе владельцев папки, а затем устанавливает разрешения для maxiamlly 775.
+0

2; Я так и думал, но я не знаю, как это сделать. – arothuis

+0

Если вы не можете этого сделать, пришло время перейти на VPS! – markus

+0

Я не уверен, могу ли я это сделать. VPS еще не вариант. – arothuis

0

чтобы разрешить только владельцу читать, исполнять и записывать, изменять разрешения на 0700.

Смежные вопросы