Thursday, September 15, 2011

Getting MySQL, PHP and Apache to run on Windows 7

Two days I spent on getting PHP, Apache and MySQL running on a Windows 7 PC. The biggest problem was getting PHP to recognise MySQL. php_inf() was just not showing MYSQL at all, only MYSQLND which was of no use. The point of the exercise was to also get my local setup as clsoe to the live one where my website is hosted.

After many attempts following tutorials and forums, I eventually I tried a different web server (nginx) with the exact same result. This confirmed that it was not the web server or PHP settings since I made sure the libraries can be found and folders were also set in the environment paths.

Somebody recommended copying the libmysql.dll file into the C:\Windows\System32 folder, but that failed since the file never stayed there and no error message. PHP also did not recognise this file as a valid extension and registering the DLL with Windows did also not help.
Somehow the DLL file ended up mysteriously in the C:\Windows\SysWOW64 folder since my installation of Windows 7 is 64 bit and the same with MySQL. I suppose this is a useful Windows feature to keep some order.

In the end it came down to what none of the forums or tutorials said which is setting things like socket, port, etc. in the "my.ini" file which I had based on the medium example file. Running mysqld or as a service made no difference.

Friday, September 09, 2011

Possibly dumping JQuery for smaller solutions

The last couple of days I managed to briefly spend some time to investigate different JavaScript frameworks similar to JQuery. So far nothing practical, just checking what is available and what could be of use. The idea is to reduce downloading time and improve performance especially on older computers and mobile devices which have memory limits.

Knockout.js and Backbone.js look promising according to the following discussion:
http://stackoverflow.com/questions/5112899/knockout-js-vs-backbone-js-vs

Either of them in their minified form have a roughly 4KB file size. as opposed to other like JQuery for example which are in the double or triple digits. For low-end mobile phones this becomes a problem. I have seen some nasty error messages on mobile phones due to out of memory when loading some websites as well as serious slowdown.

What has been showing up lately a lot as well is Node.js which is server-side and cannot just simply run on every website. Node.js also uses V8 JavaScript which might not be supported yet by all browsers on all hardware.

Obviously some of these frameworks are for specific purposes only, but might prove to be useful once I have had some serious experimentation time.