![]() |
|
Модераторы: skyboy, MoLeX, Aliance, ksnk |
![]()
|
|
| 1152010 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 38 Регистрация: 6.11.2010 Репутация: нет Всего: нет |
Нужно проверять файл на изменения, в идиальном варианте уловить даже его открытия посторонним, по каким аттрибутам файла можно это вычислить?
|
|||
|
||||
| skyboy |
|
|||
|
неОпытный ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9820 Регистрация: 18.5.2006 Где: Днепропетровск Репутация: 75 Всего: 260 |
||||
|
||||
| 1152010 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 38 Регистрация: 6.11.2010 Репутация: нет Всего: нет |
Нет буду мд5 хэш отсылать по этапу, нужно знать, был ли файл кем-то просмотрен или нет. Есть какой-нибудь флаг для этого? И вопрос, мтайм переписывается при аплоде на сервер?
|
|||
|
||||
| skyboy |
|
|||
|
неОпытный ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9820 Регистрация: 18.5.2006 Где: Днепропетровск Репутация: 75 Всего: 260 |
fileatime. но, как и написано в мане, механизм обновления atime(access time) при чтении файла может быть отключен при монтировании. для ускорения работы. и потому лучше не полагаться всецело. хоспади, посмотрел бы уже полный список функций в мане. filectime - штамп создания fileatime - штамп доступа(на чтение в том числе) filemtime - штамп последнего изменения Добавлено через 2 минуты и 7 секунд не давай файл напрямую средствами только НТТР-сервера. переадресовывай запросы на скрипт, который перед отдачей чего-то куда-то(желательно не построчно, а при помощи механизма X-SendFile) будет делать нужный тебе операции. |
|||
|
||||
| 1152010 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 38 Регистрация: 6.11.2010 Репутация: нет Всего: нет |
Смотрел, и подумал, что если запущу просто скрипт время там тоже изменится Тогда на что полагатся? Какой файл? Скрипт? Так я его и не отдаю, он запускаеммый ведь |
|||
|
||||
| skyboy |
|
|||
|
неОпытный ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9820 Регистрация: 18.5.2006 Где: Днепропетровск Репутация: 75 Всего: 260 |
не понимаю.
что за файл, изменения/доступ к которому надо отслеживать? зачем отслеживать доступ к файлу?
логично предположить, что filemtime запрашивает информацию у системы, которая "смотрит" в таблице размещения файлов аттрибуты файла. а не открывает сам файл на чтение. так что нет, время "там" не изменится. |
|||
|
||||
| 1152010 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 38 Регистрация: 6.11.2010 Репутация: нет Всего: нет |
||||
|
||||
| skyboy |
|
|||
|
неОпытный ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9820 Регистрация: 18.5.2006 Где: Днепропетровск Репутация: 75 Всего: 260 |
||||
|
||||
| 1152010 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 38 Регистрация: 6.11.2010 Репутация: нет Всего: нет |
skyboy, в файле данные, в случае доступа посторонних к данным, сменить содержимое. Так ясней?
|
|||
|
||||
| 1152010 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 38 Регистрация: 6.11.2010 Репутация: нет Всего: нет |
atime не отрегировал на открытие файла, система - Убунту. Какие ещё флаги есть?
|
|||
|
||||
| cutwater |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 592 Регистрация: 24.6.2008 Репутация: 1 Всего: 10 |
1152010, Постановка задачи бредова изначально. И задавать еще десяток наводящих вопросов, чтобы понять какую задачу Вы решаете ни у кого нет желания. Нужны подробности, телепатов нет. Каким образом может происходить доступ к файлу, потрудитесь описать полную картину. При такой постановке вопроса задача не решаема на уровне php да и не решаема в принципе. Добавлено через 1 минуту и 10 секунд P.S. я бы конечно мог Вам предложить писать перехват системных вызовов, чтобы более менее гарантировано отслеживать обращение к файлу, но все же подождем более подробного описания проблемы. |
|||
|
||||
| 1152010 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 38 Регистрация: 6.11.2010 Репутация: нет Всего: нет |
Ну в принцепе я уже изложил задачу, я конечно понимаю, что всегда остаётся возможность скопировать файл и посмотреть копию. С этим риском заказчик ознакомлен и согласен.
Задача данная заказчиком в принцепе такая: В файле данные доступов, в случае просмотра файла, нужно, что бы сработало что-то вроде сигнализации. Файл пхп, он будет каждый раз при запуске создавать мд5 хэш себя, и передовать его вместе с данными, у принимающей стороны будет записан актуальный хэш файла, в случае несоответствия должна сработать выше указанная "сигнализация". Какие ещё вопросы к задаче? Добавлено через 2 минуты и 4 секунды Я сомневаюсь, что это возможно на ПХП из открываеного на сервере файла, или? Кстате, по логике, atime должен срабатывать и на копирование, так как для копирования файл ведь прочесть надо или? |
|||
|
||||
| skyboy |
|
|||
|
неОпытный ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9820 Регистрация: 18.5.2006 Где: Днепропетровск Репутация: 75 Всего: 260 |
т.е. конфиг с параметрами доступа к БД и прочим ресурсам? тогда бида - РНР-то действительно будет его при открытии читать. и сигнализация бы "сигнализировала" каждый раз при открытии страниц сайта. можно только запретить чтение не из-под РНР: запускать Apache(и РНР) под сторонним пользователем(обычно это www-data), а у остальных пользователей чтоб не было прав даже на чтение.
правда, это не помешает при наличии доступа написать РНР-скрипт, который не только прочитает конфиг, но и напечатает его. и при наличии админ-прав на сервере не помешает тоже. Добавлено через 1 минуту и 7 секунд а atime - это не "любой доступ". копирование - системная операция. скорее всего, atime у источника и не должно меняться. а у копии должно "обнулиться" |
|||
|
||||
| 1152010 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 38 Регистрация: 6.11.2010 Репутация: нет Всего: нет |
Да, иммено так, явки пароли. Доступа к серверу как такого сказали нету, только на уровне положить файл, а дальше уже через этот файл, как хочешь так и корячся
|
|||
|
||||
| 1152010 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 38 Регистрация: 6.11.2010 Репутация: нет Всего: нет |
Проблема была в системе где тестировал, atime всё правельно делает, то что надо, и кстате копирование тоже изменяет значение последнего доступа
|
|||
|
||||
![]()
|
| Правила форума "PHP" | |
|
|
Новичкам:
Важно:
Внимание:
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | PHP: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |