2012-02-26 3 views
0
  1. Скажем, я разрешил людям загружать файлы на сервер. Должен ли я изменить имя файла s после загрузки? если да, то как я могу узнать об именах файлов позже, beacause в CMS мне нужно tpo предоставить им URL-адрес для изображений или файлов doc и т. д., поэтому они ссылаются на них при создании текста для веб-сайта.Лучшее разрешение для файлов для загрузки и удаления файлов и папок

  2. Я закодировал программу, с помощью которой мои пользователи могут перемещаться по некоторым файлам и папкам , они могут создавать папки и загружать файлы любого расширения внутри указанных папок . К сожалению, мой код создает все файлы и складывается с разрешением 777. Я хочу знать Что произойдет, если кто-то загрузит файл .php внутри папки и запустит его. Может ли он/она Удалить все возможное? Можете ли вы мне помочь с правильным разрешением, я должен дать этим файлам и папкам. Пользователь должен знать о URL-адресе, где он загрузил изображение, поэтому при создании некоторого контента он может ссылаться на них как на URL-адрес изображений или документов офисного слова. Пожалуйста, помогите мне с дырой в безопасности.

спасибо.

ответ

0
  1. Я предлагаю вам создать таблицу базы данных в качестве ссылки на эти файлы, чтобы вы могли записать старое имя и изменить имя в файловой системе на другое, чтобы вы никогда не перезаписывали существующий файл с тем же именем . Или вы можете даже тот же файл в БД вместо файловой системы.
  2. Прежде всего, вы не должны позволять пользователю загружать любые исполняемые файлы на ваш сервер или, по крайней мере, вам нужно изменить имя расширения на что-то еще, что я думаю. И я не думаю, что 777 необходимо, вам просто нужно убедиться, что папка r/w для процессора php/web-сервера и этого должно быть достаточно для доступа любого пользователя.
Смежные вопросы