Как запретить создание новых файлов в папке X? - PullRequest
1 голос
/ 31 марта 2011

В папке скажем /folderX/ есть 4 файла .txt.
Сценарий php в настоящее время создает новые файлы, если он не создан, на основании site.org/foo/ URL-адреса он обновляет новый файл, если foo.txt этого не делает.существует, тогда он пойдет и создаст его.

Но я бы хотел: A) Если существующий файл уже находится в папке, то разрешить ему обновить / перезаписать его, НО B) Если файлнесуществующий, например, foo.txt, затем НЕ позволяет ему создавать новые файлы в папке / folderX /

Причина в том, что поисковые системы иногда случайно проверяют папки, такие как / images / или / icons / или /article / etc, и все эти файлы затем создаются и PHP обрабатывает их.Если файл не может быть создан, то, вероятно, PHP не обработает их и не выдаст странным сканерам ошибку, которую они заслуживают видеть.

Какие свойства я должен установить в папке FTP на папке X, чтобы переопределить любой PHPсценарии и вызывают запрет создания каких-либо новых файлов в этой папке?

По сути, я надеюсь, что определенный CHMOD сделает это возможным.Большое спасибо за ваши предложения.

1 Ответ

1 голос
/ 31 марта 2011

Если все файлы созданы, вы можете установить разрешение 555 для папки, чтобы удалить флаг записи для других пользователей (веб-сервер и PHP) и владельца для записей каталога.Файлы внутри будут сохранять флаг rw- и, следовательно, будут доступны для записи.

Обратите внимание, что это работает только в том случае, если ни один PHP-скрипт не удалит ни одну из записей fileX.txt.Когда-то не понравившиеся разрешения на запись исчезли.

(Кстати, вы также можете использовать разрешение 111 для папки, чтобы даже запретить перечисление содержимого в этой папке. Более подлый. Но, вероятно, в этом нет необходимости.)

...