Могу ли я писать в файловую систему на лазурном веб-сайте? например, обновление или установка плагинов/тем в Wordpress с панели инструментов. AFAIK, это невозможно на Heroku, так что о веб-сайтах Azure?
Могу ли я писать в файловую систему на лазурном веб-сайте?
Ответ 1
Конечно, можно писать в файловой системе Azure Websites. Однако ваши права на запись ограничены корневой папкой вашего приложения. Итак, если вы используете ASP.NET, вы сможете писать где угодно в Server.MapPath("~/from_here_on")
. Это значит, что вы сможете выполнять операции чтения/записи/удаления файлов, которые находятся в корневой папке вашего приложения и ниже. Если вы используете PHP, корневую папку можно получить из переменной среды $_SERVER['DOCUMENT_ROOT']
.
И веб-приложение не нуждается в дополнительных привилегиях. Конечно, вы не сможете писать в папках операционной системы.
Ответ 2
Также как дополнительная информация, если кто-то сталкивается с ошибкой could not find a part of the path ...
при записи: убедитесь, что папка, которую вы пишете, будет развернута. В моем случае это был пустой временный каталог, который был пропущен во время развертывания.
Ответ 3
Я предлагаю использовать контейнер blobs вместо хранения постоянного содержимого, которое должно сохраняться независимо от повторной инициализации или обновления виртуальных машин.
Ответ 4
Насколько я понимаю, вы можете записать на диск на лазурной веб-роли, но проблема в том, что веб-роль может иметь несколько экземпляров, поэтому размещение файла на любом node, с которым вы подключаетесь, тоже не помещается это на других узлах, и когда этот экземпляр будет возвращен, он возвращается к исходному изображению веб-роли, поэтому вы потеряете файл.
Однако можно поделить диск между экземплярами узлов веб-роли Azure по крайней мере в соответствии с этой статьей, а затем вы можете настроить виртуальную папку под веб-сайтом, которая указывает на этот общий диск, и использовать это для хранения мультимедиа.
Я еще не пробовал это самостоятельно, но натолкнулся на этот вопрос, когда искал, как это сделать.
Ответ 5
Я думаю, что веб-приложения Azure стали намного более строгими, но мне удалось записать в %TMP% (D:\local\Temp)
Ответ 6
Если вы спрашиваете о диске C:\или D:\на сайте Azure, ответ - нет. У вас нет доступа к файловой системе таким образом на сайтах Azure. У вас есть доступ к диску, если это веб-роль (облачные службы) или виртуальные машины.
Однако, как вы уже знаете, вы можете сами использовать инструмент администратора Wordpress для редактирования кода плагина.