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

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

При развертывании через GIT с помощью $ git aws.push

Мои файлы развернуты, но все мои папки и файлы не имеют правильных разрешений. В настоящее время работает 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?

На самом деле не так сложно настроить крючок для исправления разрешений после того, как ваш код будет извлечен на ваш экземпляр, но до того, как он будет считаться «развернутым». Вы можете создать файл с именем .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 – это каталог, в который были извлечены файлы развертывания, поэтому нет необходимости устанавливать явный путь.

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

container_commands: 00fix_permissions_dirs: команда: "find / var / app / ondeck -type d -exec chmod 755 {} \;" ignoreErrors: true 01fix_permissions_files: команда: "find / var / app / ondeck -type f -exec chmod 644 {} \;" ignoreErrors: true

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