Laravel 4 и способ развертывания приложения с использованием FTP

У меня возник вопрос о том, как использовать приложение Laravel.

Я разработал свое приложение локально с помощью Composer.

Теперь я готов развернуть это приложение для производства.

У меня есть (на данный момент) производственный сервер, который использует только FTP.

Я прочитал этот форум: Форум Laravel

но я думаю, что это неверно.

Я создал каталог на моем сервере, например: http://wwww.myserver.com/app

В каталоге /app я скопировал (по FTP) все мои файлы...

Но это не работает. Мне нужно что-то изменить?

Ответ 1

Скажем, ваш док. корневая папка www

  • Создайте папку с именем laravel на вашем общем хостинге (за пределами www) и загрузите свою структуру приложения в эту папку, за исключением общей папки.
  • Загрузите содержимое вашей общей папки в папку www.
  • Отрегулируйте структуру пути в файле bootstrap/paths.php.
  • Также измените пути в файле www/index.php, чтобы найти новую папку larvel.
  • Готово.

В следующей статье также есть еще два решения (и мой более подробный):

http://driesvints.com/blog/laravel-4-on-a-shared-host

Ответ 2

Вы попробовали http://wwww.myserver.com/app/public?

Если вы не настроили bootstrap/paths.php и public/index.php, ваш сайт должен открыть через http://wwww.myserver.com/app/public. Но вам также необходимо настроить пути и учетные данные в приложении /config/database.php

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

В этой статье показано, как настроить пути: http://myquickfix.co.uk/2013/08/hosting-laravel-4-on-cpanel-type-hosting-public_html/

Ответ 3

Я сделал процесс развертывания моего приложения Laravel 4 вчера, предложенного Сасом Сэмом, и ему не нужно было устанавливать Composer, но я могу понять, почему люди это сделают, потому что с ftp, используя Filezilla, я столкнулся с проблемой, из более чем 3000 файлов он пропустил - или, скорее, скопировал "пустые файлы" для четырех файлов php, включая один из основных классов класса Illuminate (RedirectRequests.php), в результате чего приложение запустило ошибку раньше.

Когда я понял, что файл пуст, я провел несколько часов в Filezilla, рассматривая каждый файл (есть много, кроме файлов php, но только файлы php, которые были пусты, вызывали проблемы) в папке Laravel, которую я создал, перекрестился - переписывая их с моей локальной установкой, чтобы вставить код в общей сложности четыре "пропавших" php файла, и теперь он работает нормально.

Итак, возможно, установка linux-установки Composer непосредственно на сервере, а затем выполнение новой установки той же версии Laravel, возможно, и избежать этого, у меня возникли проблемы с GoDaddy, получающим SSH-доступ к моему проекту, поэтому избранный просто вместо этого, вместо моего тонкого расчесывания моего проекта. До тех пор, пока у вас есть все файлы там, которые должным образом ссылаются через файлы bootstrap.paths и public index.php, они должны работать.