Таким образом, фоном этого является то, что я развертываю это на учетной записи общего хостинга.
У меня были другие развертывания в разных доменах, работающие без проблем, но по какой-то причине этот вызывает у меня горе.
Я не могу разобраться, что заставляет ремесленника терпеть неудачу.
Мне пришлось откатить свою версию Laravel, так как этот хост не поддерживает PHP 5.4, поэтому я не знаю, могло ли это быть проблемой. Я пошел к источнику для Laravel 4.1 и убедился, что файлы были правильными версиями для ремесленника и пары других.
Версия PHP на этом сервере, по-видимому, является быстрой сборкой CGI, но я даже пытался обновить команды развертывания с «php» до «php-cli» и получить ошибку, но это не та, что ниже, с ошибкой 500, просто нет больше информации о сбое.
Я скачал файл composer.phar, CHMOD 777 и сохранил его в корне учетной записи, где находится другая для другой учетной записи, для которой у меня есть эта работа.
* 2014-09-21 13:04:19 executing `deploy:migrate'
* executing "php /home/username/domaincom/releases/20140921170416/artisan migrate"servers: ["domain.com"]
[domain.com] executing command
** [out :: domain.com] Status: 500 Internal Server Error
** [out :: domain.com] X-Powered-By: PHP/5.3.27
** [out :: domain.com] Content-type: text/html
** [out :: domain.com]
command finished in 381ms
*** [deploy:create_symlink] rolling back
*** no previous release to rollback to, rollback of symlink skipped
*** [deploy:update_code] rolling back
* executing "rm -rf /home/username/domain.com/releases/20140921170416; true"
Я в недоумении от этого и достигаю точки разочарования. Я хотел бы иметь возможность использовать мой общий план посредников, чтобы иметь возможность создавать и размещать сайты Laravel, но в таком случае мне придется либо приобрести другого посредника для них, либо микро-сервис AWS, который я бы предпочел не делать, так как я уже есть ресурсы.
Любые рекомендации / предложения приветствуются. Мне просто нужно разобраться с этим.
РЕДАКТИРОВАТЬ:
Добавлен полный вывод сценария развертывания.
triggering load callbacks
* 2014-09-21 13:04:10 executing `production'
triggering start callbacks for `deploy'
* 2014-09-21 13:04:10 executing `multistage:ensure'
* 2014-09-21 13:04:10 executing `deploy'
* 2014-09-21 13:04:10 executing `deploy:update'
** transaction: start
* 2014-09-21 13:04:10 executing `deploy:upload_config'
servers: ["domain.com"]
** sftp upload #<StringIO:0x00000001a33ff8> -> /home/username/domain.com/shared/config/database.php
[domain.com] /home/username/domain.com/shared/config/database.php
[domain.com] done
* sftp upload complete
servers: ["domain.com"]
** sftp upload #<StringIO:0x00000001f2a430> -> /home/username/domain.com/shared/config/app.php
[domain.com] /home/username/domain.com/shared/config/app.php
[domain.com] done
* sftp upload complete
servers: ["domain.com"]
** sftp upload #<StringIO:0x0000000227d038> -> /home/username/domain.com/shared/config/mail.php
[domain.com] /home/username/domain.com/shared/config/mail.php
[domain.com] done
* sftp upload complete
* 2014-09-21 13:04:11 executing `deploy:update_code'
updating the cached checkout on all servers
executing locally: "git ls-remote [email protected]:drmcnasty/domain.com.git laravel-downgrade"command finished in 968ms
* executing "if [ -d /home/username/domain.com/shared/cached-copy ]; then cd /home/username/domain.com/shared/cached-copy && git fetch origin && git fetch --tags origin && git reset --hard c4f8cb133da8e5097d6d0be7234b355f1befaa21 && git clean -d -x -f; else git clone -b laravel-downgrade [email protected]:drmcnasty/domain.com.git /home/username/domain.com/shared/cached-copy && cd /home/username/domain.com/shared/cached-copy && git checkout -b deploy c4f8cb133da8e5097d6d0be7234b355f1befaa21; fi"servers: ["domain.com"]
[domain.com] executing command
** [domain.com :: out] HEAD is now at c4f8cb1 updated to last laravel version
command finished in 3833ms
copying the cached version to /home/username/domain.com/releases/20140921170416
* executing "cp -RPp /home/username/domain.com/shared/cached-copy /home/username/domain.com/releases/20140921170416 && (echo c4f8cb133da8e5097d6d0be7234b355f1befaa21 > /home/username/domain.com/releases/20140921170416/REVISION)"servers: ["domain.com"]
[domain.com] executing command
command finished in 347ms
* 2014-09-21 13:04:17 executing `deploy:finalize_update'
* executing "rm -rf -- /home/username/domain.com/releases/20140921170416/public/system && mkdir -p -- /home/username/domain.com/releases/20140921170416/public/ && ln -s -- /home/username/domain.com/shared/system /home/username/domain.com/releases/20140921170416/public/system && rm -rf -- /home/username/domain.com/releases/20140921170416/log && ln -s -- /home/username/domain.com/shared/log /home/username/domain.com/releases/20140921170416/log && rm -rf -- /home/username/domain.com/releases/20140921170416/tmp/pids && mkdir -p -- /home/username/domain.com/releases/20140921170416/tmp/ && ln -s -- /home/username/domain.com/shared/pids /home/username/domain.com/releases/20140921170416/tmp/pids"servers: ["domain.com"]
[domain.com] executing command
command finished in 346ms
* executing "find /home/username/domain.com/releases/20140921170416/public/images /home/username/domain.com/releases/20140921170416/public/stylesheets /home/username/domain.com/releases/20140921170416/public/javascripts -exec touch -t 201409211704.17 -- {} ';'; true"servers: ["domain.com"]
[domain.com] executing command
** [out :: domain.com] find: `/home/username/domain.com/releases/20140921170416/public/javascripts': No such file or directory
command finished in 367ms
* 2014-09-21 13:04:17 executing `deploy:fix_permissions'
* executing "ls -x /home/username/domain.com/releases"servers: ["domain.com"]
[domain.com] executing command
command finished in 347ms
* executing "chmod -R a+w /home/username/domain.com/releases/20140921170416/app/storage"servers: ["domain.com"]
[domain.com] executing command
command finished in 338ms
* 2014-09-21 13:04:18 executing `deploy:copy_config'
* executing "cp /home/username/domain.com/shared/config/* /home/username/domain.com/releases/20140921170416/app/config/"servers: ["domain.com"]
[domain.com] executing command
command finished in 326ms
* 2014-09-21 13:04:18 executing `deploy:prepare_artisan'
* executing "chmod u+x /home/username/domain.com/releases/20140921170416/artisan"servers: ["domain.com"]
[domain.com] executing command
command finished in 322ms
* 2014-09-21 13:04:19 executing `deploy:create_symlink'
* executing "rm -f /home/username/domain.com/current && ln -s /home/username/domain.com/releases/20140921170416 /home/username/domain.com/current"servers: ["domain.com"]
[domain.com] executing command
command finished in 340ms
* 2014-09-21 13:04:19 executing `deploy:migrate'
* executing "php /home/username/domain.com/releases/20140921170416/artisan migrate"servers: ["domain.com"]
[domain.com] executing command
** [out :: domain.com] Status: 500 Internal Server Error
** [out :: domain.com] X-Powered-By: PHP/5.3.27
** [out :: domain.com] Content-type: text/html
** [out :: domain.com]
command finished in 381ms
*** [deploy:create_symlink] rolling back
*** no previous release to rollback to, rollback of symlink skipped
*** [deploy:update_code] rolling back
* executing "rm -rf /home/username/domain.com/releases/20140921170416; true"servers: ["domain.com"]
[domain.com] executing command
command finished in 341ms
failed: "sh -c 'php /home/username/domain.com/releases/20140921170416/artisan migrate'" on domain.com
Так что, очевидно, вам нужно обновить ваши команды capistrano в файле deploy до пользователя «php-cli» вместо просто «php».
Это то, о чем я читал ранее, но чего я не слышал, так это необходимости внести это изменение в раздел скриптов вашего файла composer.json.
Других решений пока нет …