Looking for more information on how to do PHP the right way? Check out PHP: The Right Way

Freek Van der Herten:
Using Varnish on a Laravel Forge provisioned server
Jan 05, 2017 @ 14:19:15

Freek Van der Herten has a post to his site showing you how to set up Varnish with a Laravel Forge server. Forge is a service that makes it simpler to set up and manage servers and the applications installed without having to mess with the details yourself.

For a project we’re working on at Spatie we’re expecting high traffic. That’s why we spent some time researching how to improve the request speed of a Laravel application and the amount of requests a single server can handle. There are many strategies and services you can use to speed up a site. In our specific project one of the things we settled on is Varnish. In this post I’d like to share how to set up Varnish on a Forge provisioned server.

He gives a high level overview of what Varnish is and what benefit it provides to your application (complete with illustrations) and includes a link to a presentation introducing Varnish to PHP developers. Then he moves on to installing Varnish on the server, updating the VCL configuration file and opening a port for you to use when connecting to the Varnish service. He shows the difference in the response headers when Varnish handles the response and the updates you'll need to make to get your Laravel application to play nicely with Varnish with this package.

He ends the post with examples of how to test the performance difference and some final steps to update the config and have it run on port 80 instead of the default 6081.

tagged: laravel forge varnish provision server tutorial setup configure performance

Link: https://murze.be/2017/01/varnish-on-a-laravel-forge-server/

Build a VM for Drupal 8 with Vagrant
Nov 26, 2014 @ 10:22:22

A new tutorial has been posted on the php[architect] site today showing you how to build a VM for Drupal 8 with the help of Vagrant.

At this year’s php[world] hackathon, I spent my time getting a Vagrant machine configured to run Drupal 8. I know there are other options, like Acquia’s own Dev Desktop, or even Zend Server. However, I like using Vagrant to run my LAMP stacks, especially on OS X. I’ve never been able to easily run xAMP on non-Linux machines. Installing MySQL can be a pain, system updates can change the version of PHP you’re running, and some PHP extensions are really difficult to build—even with Homebrew. Vagrant simplifies getting a working development environment running by automating the provision of a virtual machine for you, usually with a tool like Chef, Puppet, or Ansible.

Oscar (the author) took advantage of some time at the php[world] hackathon to create the necessary files for building this environment. He walks you through the steps to creating the basic vagrant file with "config" options (explaining each one) and walks through the setup of additional options, software like Apache and Drupal. He then sets up the Ansible configuration to create the box, run the provisioning and configuration of the resulting server. Finally, he shows the result of the install if everything was successful.

tagged: drupal8 vagrant vm virtualmachine tutorial introduction configuration provision

Link: http://www.phparch.com/2014/11/build-a-vm-for-drupal-8-with-vagrant/

Amazon Web Services PHP Blog:
Provision an Amazon EC2 Instance with PHP
Aug 23, 2013 @ 09:15:23

On the Amazon Web Services blog today Jeremy Lindblom shares a quick way you can use the AWS SDK to create an EC2 instance directly from PHP in just a few lines of code.

Amazon EC2 is a powerful AWS service that includes the ability to provision on-demand servers. While you can easily do this through the AWS Management Console, in this post, I want show you how to use the AWS SDK for PHP to do it programmatically by interacting with the Amazon EC2 API.

He starts with an outline of the steps (requiring a little bit of EC2-side configuration first) and shows how to use the SDK. His code sets up the client, creates the key pair and security group then is ready to make the instance. You can give the "runInstances" method a configuration that includes number of instances and what type. There's also some hooks back into the request that can tell you when the instances are running and how to get the path to the new instance (for ssh access).

tagged: amazon webservice api provision instance ec2 sdk tutorial

Link: http://blogs.aws.amazon.com/php/post/TxMLFLE50WUAMR/Provision-an-Amazon-EC2-Instance-with-PHP

Chris Hartjes' Blog:
Build PHP 5.4 on CentOS With Vagrant
Apr 16, 2012 @ 10:02:02

In a new post to his blog Chris Hartjes shows you how to get PHP 5.4 installed on a CentOS machine (virtual machine) with the help of Vagrant.

I like the idea of using Vagrant to create virtual machines for my development work. Doing things this way I think keeps the host machine cleaner and allows you the ability to distribute those VM’s to other people as well. My old boss Ben Ramsey did a very informative post on getting PHP 5.4 configured on CentOS so I decided to one-up him by taking his instructions and creating a Puppet manifest so you could do this using Vagrant or on any server that you can provision using Puppet.

He example is based off of the publiclly available Vagrant setup and provides the contents of the Vagrantfile that he uses to set up the machine. From there, Puppet takes over and uses his configuration (also included) to set up things like the Apache server, some configurations for it, a list of PHP extensions and, of course, PHP itself.

tagged: centos virtualmachine vagrant puppet provision