2008-11-20 4 views
1

Я написал сценарий, который берет сводку заказа и хранит его в XML-файле, за исключением того, что я не хочу, чтобы люди могли открывать XML-файл в своих браузер, очевидно.Права доступа к файлам на общих хостах

Я размещен на очень изворотливом общем сервере с ограниченными возможностями: нет SSH, для начала.

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

Обычно я создавал папку за пределами корня документа и помещал ее туда, но при попытке этого я получаю сообщение «Отказано в разрешении».

папки, которые являются есть:

  • anon_ftp
  • бин
  • CERT
  • CGI-BIN
  • конф
  • error_docs
  • и т.д.
  • httpdocs
  • httpsdocs
  • ФД
  • частные
  • статистика
  • субдоменов
  • web_users

PHP не может получить доступ к файлу, если он находится в папке private. Возможно ли это с помощью .htaccess?

ответ

1

Я работал вокруг него, поместив файл XML в моей папке httpdocs, но добавил файл .htaccess с этим в нем:

<Files ~ "myfile.xml"> 
    Order allow,deny 
    Deny from all 
</Files> 
0

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

+0

Вы, очевидно, никогда не были с WebAccess – nickf 2008-11-20 06:44:08

5

Вы можете создать каталог, содержащий .htaccess файл, который выглядит примерно так:

Deny from all 

Это будет инструктировать Apache не обслуживать файлы из этого каталога; любые попытки доступа к каталогу или его содержимому будут выполнены с ответом «403 Forbidden» с сервера.

Примечание: Это зависит от хозяина, не убрав Limit из списка опций в их AllowOverride директивы; у большинства общих хостов не должно быть причин для этого.

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