Quick word about the development environment I have chosen. The site itself is running on a Raspberry Pi 3. Superb piece of kit. Configured as a headless server, it just sits there consuming not a lot of power (around 3 Amps when working, and that includes the external hard drive) and is quite capable of running WordPress, Apache2, PHP and MySQL. At least to the level of traffic that I am expecting.
To upload to the Raspberry Pi I am using WinSCP. Brilliant little free app for moving files and directories to/from Windows/Linux. Recommend checking out their web site: WinSCP
GIT for version control
- WinSCP is great for file transfer. However it does mean that it is up to me to keep everything in Sync. Not a problem at the moment, might be later as the site grows.
- Some point soon, I am going to be getting into PHP and MySQL. MySQL is not be an issue with VS2015, but the PHP aspect is a whole new ball game. You can get PHP language plug-ins for VS2015, but I don’t think that extends to the Visual Studio Development Server. Two possible solutions:
- Install WAMP on PC and use Apache as the VS Debug Server.
- Move over to MAC and start using Eclipse (another blast from the past for me)
Have now installed WAMP on the Laptop. I would say is that it does feel like an Add-on, but it does work well. I am able to run PHP and MySQL, test the MySQL d/b creation scripts, and fully test the site with the exception of the WordPress blog.
Do have to watch out for case sensitivity issues, both with filenames (Windows vs Linux) and with MySQL. I am used to SQL Server not only are object names (databases, tables, views, columns etc) all case insensitive but the default setting (which most people seem to retain) is that even data comparison is case insensitive.
Issues / Differences between WAMP and LAMP
- When constructing the template page I omitted the <!DOCTYPE HTML PUBLIC “-//W3C//DTD HTML 4.01//EN” “http://www.w3.org/TR/html4/strict.dtd”> element. This didn’t affect the pages on the PC. On the RasPi the page was missing a number of elements and of those that were displayed the text fonts were incorrect.
- Database object names are case sensitive on Linux.