Laravel Hosting: Compare Hosting
Oops! No Hosting Plans Match Your Search
You've selected a combination of features that none of the web hosts we profile offer. We suggest you remove your last filter or reset & start again.
Ask Our Experts
Need help with your hosting? Tell us exactly what you are looking for and we’ll do our very best to help. Please allow one working day for a response.
Please fill in all fields.
Thanks! Your request has been sent. We'll reply within 24 hours.
Recommended Host for Laravel
What is Laravel?
Are you building PHP applications? Are you using a development framework? Laravel is a development framework for building web applications in PHP. An application framework is a suite of tools and templates for developing new software applications, along with a methodology for organizing the code and designing the system architecture.
When building a new web application in PHP, there are a number of common features that need to be included no matter what the core functionality of the new application is. This "boilerplate" development includes complex activities like user and session management, as well as fundamental utility code like connecting with a database.
Very few developers really enjoy coding these types of features. It's a lot of complicated and exacting work without much payoff in terms of value added to the product.
Laravel and Basic App Features
Laravel provides all the core features that every web application needs, such as a database abstraction layer and a user login modules.
In addition to that, Laravel takes this a step further and offers additional modules for commonly (though not universally) needed functionalities like payment processing (the Laravel Cashier module) and event listeners.
Even better, because Laravel uses Composer for package management, it is easy for developers to create (and other developers to include) other generalized feature sets. This is especially useful for software development teams building multiple apps in a related industry; domain-specific features can easily be modularized and included in multiple projects.
Developers building a new software application have an almost unlimited number of ways of designing the system and organizing their code. This complete freedom is the source of the great potential of software — anything is possible. But this is also the source of many project failures and delays — anything (bad) is possible.
It is very rare that someone is building an application to do something so incredibly novel that an entirely new approach is needed. (And it is even rarer in PHP.) So it makes sense that a good development framework would provide exactly what its name implies: a frame of an application.
Laravel is strongly orientated toward best practices and a logically sensible architecture.
Model View Controller
Laravel is built on the Model–View–Controller (MVC) paradigm, which is a way of structuring an application so that the data, the display, and the business logic are separated from each other.
The Model is the data model. This is the code that defines the types of data objects the system will keep track of, as well as their attributes and relationships to each other. The code in the model (along with basic utility classes in the core of Laravel) specifies how the the application will interact with the database.
Laravel provides a "database abstraction layer," which is a generic coding interface to a number of different supported database systems. Because of this, the primary data model (the Object Relational Model) is written directly into the application code, not in SQL.
The Model also provides an interface for updating the data associated with any object, and syncs those updates to the database or other data persistence layer. This interface is accessed primarily by the Controller.
The View is a system of templates which present data from the model in a specified way. This can be an HTML page viewable from a web browser, but it is not limited to that. Other forms of views include a public data API, an RSS feed, email templates, or printed documents. The View does not manipulate data, it merely receives it from the Model and displays it as specified. This ensures that if you are (for example) looking at an analysis of site traffic, the data is exactly the same whether you view it as a list, a graph, or a pie chart.
The Controller handles all the application logic. This begins with the connection between the Model and the View, as well as the connection to the web server or other source of requests. Other things handled by the Controller are any special conditional features. For example, if you want an email to be sent when a specific action occurs, that email is triggered by the Controller. (The Controller will no doubt receive information about the contents and recipient of the email from the Model, and the View will provide the template for the actual message.)
It isn't just boilerplate features that require a lot of boilerplate code. The development of new functionality can often be equally tedious.
For example, imagine you are building a management application for an auto repair shop. You'll want to create a class of data objects that keep track of vehicles. But you don't just have to create a new class. You have to create a View for Vehicles — surely you're going to want to display a screen that shows the details of any specific vehicle. You'll also need an index view — you'll probably want to see a list of multiple vehicles at the same time. You also have to create a route (in the Controller) for each of these — it doesn't matter that they exist if a user can't get to them. You'll also want to make sure that all these different pieces of code all work together, so you better be sure that you didn't misspell "vehicle" in one file, or use the singular when you should have used the plural.
Laravel provides a command line interface (CLI) that allows you to create scaffolded code quickly. All you do is declare the new model, and some of its attributes, and the various files and code blocks needed are created. You still, of course, have to fill these in with the real code, but all the elements are there, and the connections between them are already built.
Laravel Web Hosting
Laravel runs on PHP 5.4+ and requires the MCrypt Extension. Depending on the type of application you are building, you will need a database management system of some sort, but this choice is up to you (several are supported).
The critical issue for developing and hosting a Laravel application is that you need to be able to install software on your server yourself. Laravel requires Composer, and Composer will install any needed libraries or dependencies.
Not all shared hosting plans provide this level of control and access to the server environment, so you may need to use a VPS account or run your own Dedicated Server.
Laravel Hosting Frequently Asked Questions
What is Laravel?
Laravel is a PHP web application framework. It's a set of tools designed to make building a web application with PHP easier and faster, and produce a final product that is secure and follows best practices.
What's the benefit of using a programming framework?
A good framework like Laravel will take care of a lot of the boilerplate work that goes into creating virtually any web application and also help you avoid certain coding pitfalls. Frameworks are designed to help you save time and to encourage the following of development best practices.
Do I need to use a programming framework?
You don't have to use a framework. As a matter of fact, some purists, who tend to be extremely good developers, consider frameworks to incur unnecessary overhead and add unnecessary dependencies and encourage other developers to avoid using them.
Do I need to know PHP to use Laravel?
You need to be an intermediate PHP coder and understand the basics of object-oriented programming (OOP) before you try to jump into Laravel. However, you don't need to be an expert. Because Laravel encourages best practices, it may actually provide a bigger boost to beginner and intermediate developers than experienced professional PHP developers.
What are the Laravel installation requirements?
The exact requirements your server will need to meet before running Laravel vary a bit from on version of Laravel to the next. However, in general, you will need to be running a currently supported version of PHP and you'll need to have the ability to install PHP extensions in the event that any required extensions are missing. Further, you need to install Composer on your server before you attempt Laravel installation.
Can I run Laravel on a Windows server?
Yes, you can install Laravel on a Windows server. However, keep in mind that the large majority of Laravel users are working with Linux servers. So if you run into trouble running Laravel on a Windows server you will have a harder time finding help than if you set up Laravel on a Linux server.
How do I get and install Laravel?
Laravel is easiest to install by executing a series of commands via command line. So you'll need to use SSH to access the server where you'll be running Laravel and then execute this series of commands. If you aren't comfortable using SSH, then this is the perfect opportunity to learn to use SSH because any competent web developer needs to master this skill.
How much does Laravel cost?
Laravel is free and open-source.
Can I use Laravel on shared hosting?
Laravel developers report mixed results when trying to set up Laravel on shared hosting. The bottom line is that Laravel isn't really intended to work on shared hosting. You can probably get it working if you work on it hard enough, but you'll be better served to get it set up on a small and inexpensive VPS if you're just setting up Laravel for the first time.
What kind of applications can you build with Laravel?
Laravel is designed to build web applications based on a model-view-controller (MVC) architecture. That leaves the door open to a lot of different types of web-based applications. For example, Laravel can be used to build reservation systems like AirportParkingReservations.com, classified listing sites like HomeListingsFinder.com, ecommerce sites like rv.CampingWorld.com, and directories like ExploreGeorgia.org. Basically, any web application that deals with data that can easily be broken into consistent objects is a candidate for Laravel.
Is Laravel getting more popular?
According to Built With, Laravel was used by less than 3500 of the top one million sites at the beginning of 2016 but more than 5000 of the top one million sites one year later. While no one can predict the future, that's a pretty sizable installed base, suggesting Laravel is reasonably well established and should be around for years to come.
Why should I avoid using Laravel?
Not all PHP developers like Laravel. The most common complaint leveled at Laravel is regarding a Laravel feature called facades. Improperly used, facades can obscure what is going on under the surface and lead inexperienced programmers to write overly complex code, ironically while trying to write simple code. If you want to learn more about this issue check out Stop Using Facades as well the response from Laravel creator Taylor Otwell, Response: Don't Use Facades.
What are some alternatives to Laravel?
There are lots of PHP frameworks you could consider if you're looking for an alternative to Laravel. Start your search by researching CodeIgniter, Symfony, Zend, and CakePHP.
What are Laravel packages?
Let's say you're building an application with Laravel and find yourself developing a part of the application that will send messages to Slack. Then you think to yourself, "Surely someone else has already done this and I could save a lot of time if I could use their code." In that instance, what you're looking for is a package: a pre-built bit of code you can use to take care of a task that another developer has already created.
Where can I find Laravel packages?
Laravel packages can usually be found in one of two places: Github or Packalyst. Start at Packalyst. There you'll find thousands of Laravel packages which you can sort by popularity or age, and search by keyword or tag.