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, они должны работать.