Communication with php pogram
Tuesday May 21st 2013

Deploying phpBB on Windows Azure





Windows Azure is the Mircrosoft cloud computing solution. One thing that might come as a surprise is that is specifically intended to run php applications (well, it runs .net too, even java). Long story short, we got introduced to the azure platform during the JumpIn! Camp. The project to get phpBB running on the Azure platform started right there – now it’s showing results.

The prequisite for deploying on Azure is the new support for the native MSSQL driver, which was contributed by Microsoft.
However, a few issues had to be tackled to actually run phpBB in the cloud, namely:

  • SQL Azure is not quite the same as SQL Server and requires a few tweaks
  • Files (uploads) can’t be stored on the local file system, but have to be shared among all instances
  • A few oddities of the Azure platform, especially regarding values reported by the webserver

To expand a bit on the issues: SQL Azure requires primary (“clustered”) keys on all tables, something the default phpBB schema does not deliver. On the flip side, the phpBB MSSQL schema includes partition clauses, which are not supported on Azure. Long story short: it needs a different schema. Files cannot be stored locally in a multi-server environment – for instance a cloud – but have to be shared between all instances. This required a few patches to the phpBB core. Finally, Azure includes a load balancer, which reports an incorrect – internal – port via the ‘SERVER_PORT’ variable. This had to be corrected.

All of these changes can be found in my azure branches of my fork at github: http://github.com/kellanved/phpbb3/tree/feature/azure_blob_storage and http://github.com/kellanved/phpbb3/tree/bug/9725

So, how to use these? The answer is:

  • Download the source from the bug/9725 branch
  • Create a SQL Azure database
  • Add a firewall rule to allow your own machine to connect to the SQL Azure database
  • Start the phpBB installation, using the bug/9725 branch on your local machine
  • Use the credentials of the SQL Azure database during the install
  • Add the line define(‘AZURE_INSTALL’, true); to the config.php file
  • Delete the install directory
  • Create an Azure package with the phpBB installation you had locally
  • Deploy the package on Azure
  • Add a firewall rule to SQL Azure to allow your phpBB instance to connect with the database

Congrats, you’re running phpBB on Azure.

View full post on phpBB

  • Share/Bookmark
Related Tags: , , ,

Leave a Comment

More from category

[Day 1 Progress Report] Appsterdam phpBB Hackathon

internet advertising Appsterdam got off to a great start this morning as 17 team and community members met in Amsterdam [Read More]

[Day 2 Progress Report] Appsterdam phpBB Hackathon

internet advertising This morning, after a night of coding (with some team members still having their laptops open at [Read More]

Amsterdam Progress Report – Day 2

internet advertising This morning, after a night of coding (with some team members still having their laptops open at [Read More]

Appsterdam progress report 9 November

internet advertising Appsterdam got off to a great start this morning as 17 team and community members met in Amsterdam [Read More]

phpBB Summer of Code 2012: Post Revision Tracking

internet advertising My phpBB Summer of Code project involves the implementation of a Post Edit History, that is Post [Read More]

Twitter On Me

Calendar

May 2013
M T W T F S S
« Apr    
 12345
6789101112
13141516171819
20212223242526
2728293031