Windows: Настройка разрешений для файлов PHP перед развертыванием в Amazon Beanstalk


Недавно я перешел на Эластичный бобовый стебель Amazon, что было здорово, но у меня есть одна проблема, которую я не смог решить или найти достойное решение.

При развертывании через GIT с $git aws.нажать

Мои файлы развернуты, но все мои папки и файлы не имеют правильных разрешений. В настоящее время работает Win 8 с xampp для локального развития. Например, при недавнем развертывании WordPress все мои папки были 777 после развертывания в beanstlak. Это является Раздел NTFS, в котором находятся файлы, тоже.

Достаточно легко войти по SSH и запустить:

$  sudo su
$  find /var/www/html/ -type d -exec chmod 755 {} \;
$  find /var/www/html/ -type f -exec chmod 644 {} \;

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

Есть ли какие-либо идеи от сообщества SO по настройке разрешений для файлов Windows в соответствии с Apache?

Author: Mike Averto, 2013-03-21

2 answers

На самом деле не так сложно настроить хук для исправления разрешений после того, как ваш код будет извлечен на ваш экземпляр(ы), но до того, как он будет считаться "развернутым". Вы можете создать файл с именем .ebextensions/00permissions.conifg, имя не имеет значения, если оно находится в нужной папке с расширением .config - сценарии конфигурации выполняются в алфавитном порядке. Содержимое будет выглядеть следующим образом:

container_commands:
  00fix_permissions_dirs:
    command: "find . -type d -exec chmod 755 {} \;"
    ignoreErrors: true
  01fix_permissions_files:
    command: "find . -type f -exec chmod 644 {} \;"
    ignoreErrors: true

Обратите внимание, что каталог по умолчанию для container_command - это каталог, в который были извлечены файлы развертывания, поэтому нет необходимо задать явный путь.

Вы можете увидеть дополнительную информацию о видах команд, которые вы можете запускать на своих экземплярах в документации по эластичному бобовому стеблю.

 7
Author: Marcin, 2013-05-19 10:26:12

Контейнерные команды: 00fix_permissions_диры: команда: "найти /var/приложение/на палубе типа d-exec chmod 755 {}\;" Ошибки игнорирования: верно 01фикс_пермиссион_файлы: команда: "найти /var/приложение/на палубе - тип f-exec chmod 644 {}\;" Ошибки игнорирования: верно

Это изменит права доступа к файлам приложения. В настоящее время нет возможности запускать команды, когда приложение полностью развернуто, но вы можете воспользоваться папкой "ondeck", которая является папкой, в которую помещен бобовый стебель файлы вашего приложения перед их развертыванием.

 0
Author: user1636608, 2014-03-25 16:52:11