Categories
Development Internet

WP Migrate DB Pro + Vagrant – 502 errors

I’ve been using WP Migrate DB Pro and Vagrant for some time, but there has always been one aspect that has really annoyed me: when pulling from a remote server to my local environment, Media downloads would (very) often fail due to a 502 timeout.

I had always assumed it was an error on the remote server, until one day I was reading through my local log files (as one does) and stumbled across a Nginx configuration change that made everything work as it should.

I should note that my configuration uses Nginx and PHP-FPM, and it’s the configuration of the latter which is where the tweak needs to be made:

location ~ \.php$ {
	...

	fastcgi_buffers 16 16k;
	fastcgi_buffer_size 32k;

	...
}

https://stackoverflow.com/questions/46205725/nginx-502-fastcgi-error

Where you configure how PHP files are handled, be sure to increase the buffers and buffer size — the defaults are too small to handle the amount of data downloaded by WP Migrate DB Pro.

With this simple change, I can finally work locally with WordPress and be sure my files are in sync with the remote server.

Categories
Apple CakePHP Development

macOS + MAMP + CakePHP (bake)

Are you using macOS, MAMP, and trying to bake some CakePHP code? Are you having trouble because you get an error in Terminal such as this:

Fatal error: You must enable the intl extension to use CakePHP.

And I bet all you did was browse to your CakePHP site and tried to run this:

bin/cake bake

Well, you could install intl via Homebrew or one of the half-dozen other solutions I found, or you could simply do the following:

  1. Install/upgrade to MAMP 4.x
  2. On the left, select Languages > PHP
  3. Select the checkbox labeled: Make this version available on the command line.
  4. Click Save

Once you’ve done, open up Terminal again (if it’s already open, type exit and Quit Terminal first before trying this again) and browse to your CakePHP site. This time, instead of what you typed above, simply type the following command:

php bin/cake.php bake

This should work just fine, as php is now aliased to the MAMP PHP version (step 3 above), which has intl install, and you’re specifying the PHP script directly, bin/cake.php, and together you’ll be able to bake all the CakePHP code you need.

Categories
Development macOS

Upgrade MySQL 5.5 to 5.6 on OS X Mavericks

I needed to upgrade MySQL from 5.5.x to 5.6.x on my OS X server running OS X Mavericks (10.9) and I found a site that basically made it super painless. Nothing jumped out on my from Google regarding Mavericks, so this is really for that random person like me who was unsure how it should work.

First, go download the 64-bit DMG of MySQL from here. Don’t worry that it says 10.7, it will work just fine with 10.9.

Then go here and read this page … I’ll wait, but don’t follow all the steps until you read my next part.

While performing the steps above, you’ll reach a step that reads:

/usr/local/mysql/bin/mysql_upgrade

At this step, instead of the above, try this instead:

/usr/local/mysql/bin/mysql_upgrade -u root -p

This will prompt you for your root password, but it will also allow the upgrade script to actually run. Otherwise, the directions were perfect and you should really have no problem. If for some reason you don’t have root access to MySQL … you’ll probably want to ask someone who does.

Categories
Development macOS

XAMPP to MAMP

Tonight I decided to move from XAMPP to MAMP.

About a year (or so) ago my team transitioned from PC to Mac and when we went looking for an easy, self-contained Apache install, XAMPP was the answer.  Now we have OS X 10.7 Lion and well, I’m annoyed that XAMPP for OS X has not been updated since early March, 2010.  That’s right, over a year ago.

The reason I even began looking for a XAMPP alternative was that after upgrading to Lion, XAMPP just seemed to load pages slower than before, specifically on sites using databases that weren’t local to my machine.  Enter MAMP 2.0.  Newly released (literally yesterday) and plenty of people online giving it a thumbs up, I decided to give it a shot.

Because XAMPP for Mac (the Windows version has been updated much more recently) is over a year old, pretty much all the included applications are out of date as well.  XAMPP was on Apache 2.2.14 and although it wasn’t a necessity to have the latest Apache, it just seemed like I should be able to get it.

MAMP comes with 2.2.17 included (as of this writing, the current version of Apache is 2.2.19), which is at least newer than XAMPP.  Honestly, not a huge deal, right?

I guess what made me keep MAMP in the end is at least a decent GUI (non-Pro version) with some useful preferences (auto start servers) as well as phpMyAdmin built in.  Yes, I had phpMyAdmin installed with XAMPP (though it did not come with XAMPP), MAMP’s GUI makes it easy enough to get to these built in features that I actually find myself using them.

For reference, about 95% of my XAMPP Apache conf files made it into MAMP’s, save for SSL.  There are plenty of help online about MAMP and SSL, but basically you create your own certificate and uncomment a line in the main Apache conf file.

MAMP, a solution to a problem that didn’t really exist, but a solution nonetheless.