Laravel Deployment

让人想犯罪 __ 提交于 2019-12-19 07:58:41

问题


I have a working Laravel application on my desktop. I am trying to deploy it to a godaddy server. The application has been copied and verified on the server in the same structure format as on my desktop. I have changed the database information in the config to the proper entries. When I run from the server I get the error:

FatalErrorException

Class 'name of the class' not found.

The error is generated in the Routes.php file. Again this app works locally, any idea why it errors when deployed?


回答1:


Assuming you have a VPS server running Apache (or whatever else) with a a properly configured vhost and terminal (ssh) access, if you want deploy a Laravel app there, you surely need to

  1. Copy all project files, except for the vendor directory, from localhost to your server
  2. Verify file ownage and access rights (chown/chmod)
  3. Change all necessary config
  4. run a composer update
  5. run php artisan migrate to create the database scheme
  6. clear cache php artisan cache:clear

Next thing is populating the database with your apps data from localhost. You can either do it manually (dump sql local, import it on server), or if you want Laravel for it you can use Seeding (Laravel docs).

There even is a nice package that let's you automaticaly generete Seeders from your current database content - so it's very useful for the purpose of moving the app to another server.

https://github.com/orangehill/iseed

Inverse seed generator (iSeed) is a Laravel 4 package that provides a method to generate a new seed file based on data from the existing database table.

EDIT

If you are using a shared hosting account, check out this guide

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

This post from Laravel forum might also be of use

http://forums.laravel.io/viewtopic.php?id=9639



来源:https://stackoverflow.com/questions/21065957/laravel-deployment

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!