Blog

Why aren’t posts appearing in my digests?

I get a lot of question on phpbb.com on why digests don’t contain expected posts. Some were definitely due to bugs. While developing the digest extension I recently closed a bug that had shifted the time window for a daily or weekly digest from being based on the user’s timezone to GMT. Downloading and installing the latest master from GitHub is usually a good idea if you are encountering bugs like this.

Digests is built around users having the ability to filter posts. So pretty much any option you select in the user control panel for digests allows you to constrain what appears in a digest.

Here are some of the many reasons why you may not be seeing posts in digests:

  • Your digest type is incorrect. If you wanted a weekly digest but selected a daily digest, you are only going to get posts for the last day. If you selected “None” (no digest), obviously nothing will be sent.
  • Your timezone is wrong. If your timezone in the user control panel (look under Board preferences) is GMT and your timezone is GMT -4 you may not see four hours of posts.
  • You selected first posts of new topics only. In this case you won’t see topic replies.
  • You selected bookmarked topics only. Either turn this off or add some more bookmarked topics to include those you care about.
  • You specified posts in specific forums only. Broaden the forums you want to see or check “All”.
  • You specified you don’t want to see more than X posts in a digest. Once you hit this limit, digests will automatically ignore any other qualifying posts.
  • You specified you only want to see posts that contain a minimum number of words. Make the number lower or set it to zero (0).
  • You specified to show new posts only. Only posts after your last visit date/time in phpBB will be shown. So if you visit the forum regularly during the day, this date/time will be captured by phpBB, even if you didn’t visit a particular forum and never read those posts.
  • You specified to show only popular topics only. If, for example, you have a setting to show only topics with five or more posts per day, only those posts will show. So if there are none that qualify, there may be no digest to send or it will be empty. Popularity is based on recent postings, so for a daily digest the topics must have five or more posts over the last 24 hours.
  • You asked to remove your posts.
  • You asked to remove posts from your foes.
  • You asked to be sent a digest even if there are no new posts. This is basically a “comfort” feature to let you know digests is still working but there’s nothing new you are interested in.

Forum administrators also have a host of privileges that can affect if you receive a digest and what’s in it.

  • They can change the day of the week for sending out weekly digests. Typically it’s Sunday, but they could make it Wednesday.
  • They can also set a cap for the number of posts in a digest. If set this will affect not just your subscription, but everyone’s. Any posts above the cap will automatically be ignored.
  • They can exclude forums from ever appearing in a digest. Conversely, they can also require one or more forums to appear in a digest. (This doesn’t apply if you selected bookmarked posts only.)
  • They can balance the load so that digests are sent more evenly during the day. This could change when you receive a digest, possibly temporarily causing some posts not to appear in digest (or even to appear in a subsequent digest.) They have the option to send an email in these cases, but they don’t have to.
  • They can change any of your digest settings in the Edit Subscribers function. This could cause you to not see posts that you used to see.
  • They can mass unsubscribe users. If you find your digest type is none and you didn’t change this, this may be what happened.
  • They can disable the forum. While it is disabled no digests will go out. Things should catch up once the forum is reenabled.

Some things may affect the timely delivery of digests. Ideally a forum administrator will create a “system cron” so digests go out hourly. If they don’t, then digests may be delivered late as a “phpBB cron” depends on board traffic to kick off digest processing. In this case you just have to wait. However, if you go to the forum you might kick it off and then receive your digest.

Most of these features were features that were requested by users over the years. The popularity of digests then is due in part to meeting the demand of the market.

Updated November 26, 2018 to discuss the new popular topics feature.

Why does my forum’s performance suck?

With growth or just with the passage of time, phpBB forums can slow down. Pages may take a while to load if they load at all. You might get HTTP 500, 403 or other errors.

Today, site visitors expect fast response and if they don’t get it they may just decide it’s not worth coming to your forum. However, troubleshooting the root cause of these problems can be hard.

Often just opening a support ticket with your web host will bring you resolution. Or not. Web hosts run the gamut from poor to excellent, and generally the less you pay the poorer the service is. Web hosts though often know what the problems are, they just don’t want to tell you, as it makes them look bad. They may want you to pay for a higher quality of hosting to “solve” a problem that is really their fault, because they don’t maintain their infrastructure properly.

Here are some reasons that may be at the heart of your forum’s performance problems:

  1. Increased traffic. The traffic may not be traffic to your forum, but to other websites hosted on the same machine (server) as your website, if you are using shared hosting. This used to be a huge problem. Hosts would overload servers with domains because it was cheaper than going out and buying new machines. This works for a while until enough customers complain. The smart customers rehost somewhere else but obviously their hosts are hoping the rest won’t bail because it’s too much hassle. If traffic is getting consistently slower over a relatively short period of time or you are seeing a consistent increase in 500, 403 or similar error pages while using shared hosting, this is probably the reason. If your site is getting massively more traffic than you did before you might need to upgrade your hosting to a virtual private server or possibly even a dedicated server. Web hosts usually provide reports on usage that will help you get an idea if this might be the cause.
  2. Old hardwareThe law of entropy states that over time systems must degrade, i.e. become more complex or inefficient. It happens to your host’s servers too. Your website may be on a server that is ten years old, or has insufficient memory or CPU power for today’s needier software. So work may go into a queue until the CPU can catch its breath. While you are waiting of course nothing is happening. One clue may be to check the software installed on a server. For example, if you look in phpMyAdmin and you find that your MySQL database is running version 5.1 (released in 2008) then maybe your server is 2008 vintage, or older. Today MySQL 5.5 is generally the minimum version installed, with 5.7 being the newest and shiniest.
  3. Underpowered servers. Your server may not really have sufficient resources (CPUs, disk drives, etc.) to handle the traffic that is on it.
  4. Resource limitations. With shared hosting in particular there are implicit and generally poorly understood limits on the number of “resources” you can use: files, memory, CPU time or units of database work. You will usually see errors like this when they happen. They mean generally two things: either you are outgrowing your hosting or your server is overcommitted with other domains it is supporting. If your traffic is pretty steady, it’s more likely the latter problem. This is a sign of a poor host. You might want to rehost.
  5. Dated software. I mentioned that a host still running MySQL 5.1 is a yellow flag of caution. It’s not that MySQL 5.1 was a bad version, but many new features and performance improvements have been added since 2008. Your forum’s software has probably gotten more complex so it could use those improvements. Similarly, hosts running PHP 4 (fortunately, there are very few of these left) or even PHP 5.2 need to update their technology stack. You can see your version of PHP, web server software, operating system and the database in the Administration Control Panel, PHP information. Even the web server software you use can be dated. Still on Apache 1.2? You should probably be hosting somewhere else.
  6. You’ve been hacked! This happens rather infrequently, but it does occur from time to time. Malware or other bogus code may have infected your phpBB programs, templates and stylesheets, chewing up CPU and worse possibly infecting your readers’ computers with malware. Needless to say any malware must be removed. It may be discovered by comparing your software with a reference version of phpBB that you are using.
  7. Your database needs tuning. With so many reads and writes, your database may have grown and scattered itself all over the server’s disk platters, making it time consuming for the database management system to read and write data. You can try repairing and optimizing your forum’s tables in phpMyAdmin or a similar tool and see if performance improves.
  8. Your database is not properly configured. You may be missing primary keys, or indexes for tables. In some cases certain standard columns (added with upgrades) end up missing. Primary keys and indexes are used to retrieve data quickly. If they are missing the database won’t complain, but it will read all rows in a table to get what it needs, which is highly inefficient and can make a forum crawl. These sorts of problems are often the result of database updates that never finished properly, although they may have said they did. This can happen frequently upgrading from phpBB 3.0 to 3.1.
  9. Your phpBB version is woefully out of date. I am still surprised by requests that I get to upgrade phpBB 2 forums. phpBB 3.0 was released in late 2007! The problem is often not phpBB 2 itself, but your PHP version, which has evolved, making the handshake between PHP and phpBB awkward and inefficient, if it doesn’t trigger PHP warnings or errors. Upgrades are never fun or painless, but something you need to keep up on.
  10. You need to use a different database. Typically phpBB is used with the MySQL database because it’s free. phpBB at least in theory supports a host of other databases including SQLite and SQLServer. Most of the testing is done against MySQL and really phpBB is optimized for use with MySQL or its clone MariaDB. You will probably see better performance if you stick with these databases.
  11. You are using Microsoft software on the server. IIS is Microsoft’s web server. If you are running IIS you are also on a server using a Microsoft server operating system. IIS is not a bad web server but it works suboptimally with phpBB. phpBB should work best in a standard environment. So if you have the option to move to a Linux/Apache web server you may find marked performance improvement.
  12. Your browser is old. phpBB expects a reasonably modern browser. If others aren’t having issues but you are, maybe it’s time to upgrade your browser from IE7 or Firefox 2. Stick with recent versions of browsers like Firefox, Chrome, Safari and Opera.

There are other reasons your forum could be slow, but most likely the cause is one or more of the above. If you don’t feel you have the expertise to troubleshoot these issues yourself, or simply would rather have it done professionally, send me a service inquiry.

April 2016 work summary

April was a slow month, at least compared to March which was pretty frantic. Here’s some of the work I did in April for clients:

  • Upgraded a forum from phpBB 3.0.11 to 3.1.8. I installed Tapatalk and Cleantalk extensions. I installed American English language pack. Added the board’s logo. Expect to do a rehosting job at a later time.
  • Upgraded vanilla forum from phpBB 3.1.6 to 3.1.8.
  • Upgraded a forum with non-referenced style from phpBB 3.0.12 to 3.0.14 with many modifications. I removed some unneeded mods by manually uninstalling them and removing the style changes for the mods too. I then uploaded a virgin copy of 3.0.14 overwriting everything for consistency. I reapplied all file changes to mods that he wanted to keep, upgrading them if there was an upgrade and re-uploading the latest programs for these mods. There were styling issues with the non-standard style. I then worked through various issues. Spambot countermeasures could not be selected. Repairing tables used for it made it work. phpBB Gallery comment photos bled over to the next comment. Increased the size of the container to 350 px to accommodate it. Memberlist profile would not show, turned out to be missing ENDIF in template, which I fixed. Also installed latest en_us language pack and made sure mod language changes were made to en_us.
  • A user tried to upgrade from 3.0.8 to 3.1.6 and there were errors. He asked me to investigate and fix them. Three tables needed columns added. I also had to add six rows to the config table. I manually updated the reported phpBB version in the database. Once at 3.1.6, I upgraded from 3.1.6 to 3.1.8. All looks good.
  • Short Skype conference with a client. I upgraded forum from 3.1.8 to 3.1.9. I gave client two reports: one of users with profile fields and a list of forum names with their parents so he could determine which users can be deactivated.
  • I tutored a client in how to send files via FTP to their domain.
  • I upgraded a forum from 3.1.8 to 3.1.9. No changes to elegance style with upgrade.
  • I upgraded a forum from 3.1.5 to 3.1.9. The client reported that some people weren’t getting activation emails for new accounts. I could find no evidence of a problem. I asked user to look into spam folder. There are regular activations in the board’s user log.

phpBB and hosting choices

In this post I look at the three basic types of hosting out there and discuss their strengths and weaknesses: shared hosting, virtual private servers and dedicated servers from the perspective of phpBB.

Shared Hosting

Shared hosting means that one web server is being shared by many domains and customers. It’s generally inexpensive and for most people hosting a phpBB forum it’s a logical choice. And that’s because most phpBB forums have specialized communities interested in topics with a narrow focus. Total posts may be in the thousands. It’s rare for a forum to have more than 100,000 posts. Spending $5 or $10 a month to host a forum is certainly cheaper than the more costly alternatives.

Like Amazon Web Service’s PaaS (Platform as a Service) you generally don’t have to worry about the small stuff with shared hosting, which is good because chances are your knowledge of web technologies is not great. You want to leave the heavy lifting to those who know what they are doing. You often don’t know or care what operating system is being used and you sure don’t worry about upgrading it. The web host does all that for you behind the scenes.

But (and you knew there would be a but) you don’t get something for nothing. With shared hosting, many others are using the same machine and they may be using a lot of the server’s resources, slowing down your access or access for the people using your site. Shared hosting often comes with caps on resource utilization that tend to be not widely known. This can lead to some frustration and heartburn, but not always. Some shared hosts do a good job of balancing demand on a server. Others are trying to squeeze out all the profit they can and flood a server with many domains, leading to a lot of these problems. Those who are disgruntled move their domains elsewhere but many don’t because they don’t know how.

Even if you and your users don’t notice performance issues or resource limitations, there are some downsides to using shared hosting with phpBB. One I see all the time and keeps me gainfully employed. Resource limitations can cause upgrades to fail and there is no way to circumvent the problem as shared hosting means “one size fits all”. Some hosts will be embarrassingly far behind on the technology stack causing issues like you want to upgrade phpBB but they don’t support one of the newer versions of PHP that you need.

Busy boards generally find that at some point they outgrow shared hosting. There are too many mysterious HTTP 500 errors. Users get blank screens or posts take forever to process. Or they exceed quotas, like the number of inodes (files and directories) allowed.

With luck you can make shared hosting work for you, if you have a good web host and your needs are modest. It is the cheapest way to go.

Dedicated servers

The opposite of shared hosting is a dedicated server. This is a machine (generally with both a web server and a database server on it) that’s all yours. Even very busy forums will have a hard time making a dedicated server sweat, assuming it is properly configured and maintained. Performance is sweet but it comes at a price. Dedicated servers are expensive, typically hundreds of dollars a month to rent. Even worse from the perspective of many is that since it’s your own server, you are responsible for it. You have to worry about upgrading the operating system, database and various utilities. These are not skills most people have. They can be purchased but just buying the services of a system administrator to do this work for you can cost hundreds of dollars a month. Dedicated servers are great for those with deep pockets and for very busy boards with hundred or thousands of posts a day and lots of reading there may not be any other choice.

Virtual private servers

A virtual private server (VPS) is actually a shared server, but you have your own separate operating system and software and you are guaranteed your share of the server’s resources based on your contract. These tend to be a sweet spot for growing boards, but costs tend to start at about $50 a month. It’s called a virtual server because it appears that you have your own server but it’s not actually true. But from your perspective it is your own box, which means like a dedicated server you have to worry about upgrading the system, malware and all sorts of issues or pay others to maintain it for you. Some VPSes are not quite enough for very heavily trafficked boards. You may have to buy a dedicated server or close up shop. Most have generous quotas but if you have lots of files or very big files, the 100GB or 250GB quotas on these machines (including the operating system) may not be enough and hosting may get very expensive.

Where to host

There is a huge amount of competition among web hosts, which keeps costs down. But as you know you don’t get something for nothing. Hosts that charge $1.99 a month are probably going to be hard to get a hold of on the phone when issues arise. You are also likely to find lots of problems: slow page loads, frequent timeouts, etc. Moreover, with all the competition a good web host today may be a bad one tomorrow.

It helps to ask around for recommendations as well as check out online hosting reviews, but hosting reviews should be taken with a grain of salt. Many make money by steering you to certain hosts.

Over fifteen years or so I’ve moved from host to host many times, but I am fortunate to have the technical skills to do this if I don’t like the service. I’ve used both shared hosting and VPS hosting. Some of the hosts I used no longer exist, or were acquired by other more moneyed hosts. Here are some of my current hosting recommendations. FYI, I currently make no money in referrals so my advice is at least honest.

  • Shared hosting. I’ve had good luck with Hostgator now for about five years. It’s far from a perfect host. The ticketing support is slow and generally takes a day or two. Phone support is faster but wait times can be aggravating. But resource issues tend to be few and the hosting tends to be reliable. At $10 a month or so it tends to be a decent value. It gets a solid B grade, which considering the margins in this business is a good grade.
  • Virtual private servers. When I had more complex needs I had a VPS with MediaTemple. MT is a classy and solid web host with well engineered solutions. Their prices are not the cheapest but they tend to offer the best value. Their Grid Service is essentially shared hosting so if you have deeper pockets consider them for your shared hosting needs.
  • Dedicated servers. I’ve never needed a dedicated server myself but I often work with clients who have dedicated servers. Again, MediaTemple plays very well in this market. Softlayer (which also offers VPSes) also has thought through this hosting very well, and offers all solid state drives.

Some hosting notes

  • GoDaddy is the 800-pound gorilla host you probably have heard about already from all their advertising. It used to be terrible but now warrants a solid C+. Technical support in particular has improved from being abysmal. You can do worse than GoDaddy for sure, but it is heavily marketed and they are constantly trying to sell you services of dubious value.
  • Cloud hosting for phpBB is really not yet quite a thing, in that it’s hard to find installation packages with phpBB prebuilt. In addition there is a learning curve with cloud hosting. Unless you know what you are doing it’s probably best avoided right now. Moreover, you can probably get a better value with traditional hosts.
  • Many hosts offer CloudFlare or a similar Content Delivery Network (CDN) free in its basic form, but you have to specifically enable it in the web host’s control panel. This is a great way to improve the speed of your page loads, but it only works with static content like pictures. It does this by putting content geographically close to your users, usually meaning there are only 2 or 3 “hops” between a browser and the content. However, phpBB serves almost all of its content dynamically out of a database, so there’s little reason to pay extra for it. Ideally you will have a web host that is large enough to be its on CDN so the number of “hops” between routers is minimal.
  • I think it’s best to go with a one year contract. This way you are not out too much money, but you save some money compared to month-to-month leases. After a couple years of experience you might want to lock in a longer contract for additional savings.

March 2016 work summary

I did lots of upgrades for clients in March. Of course, client information has been anonymized:

  • I upgraded my digests mod installed on a client’s site from Digests 2.2.26 to 2.2.27 with the latest patches to address probable error of posts missing on a phpBB 3.0.12 board. phpBB was integrated inside a Joomla content management system, but there were no issues.
  • Troubleshooting. User was running out of quota again for physical volume. I deleted some archived error logs to give him some breathing room. I also deleted two unused databases that were triggering errors. Two days later I setup a cron job to remove error log archives monthly, hoping this would not trigger future quota emails. I also set client’s Web Host Manager (WHM) to give disk warnings at 90% and critical warnings at 95%.
  • Converted a forum from vBulletin 3.8.9 to phpBB 3.1.8 on new hosting. There were issues due to shared hosting limitations that triggered a MySQL max_questions limit error. When I ran the conversion program for vBulletin, I discovered some bugs in conversion program as well that I had to work around. I commented out code for populating the phpbb_banlist and phpbb_log tables, and some code that caused a HTTP 500 error on last=7 in the final step. None of these issues were critical to the integrity of the database.
  • I upgraded a forum from phpBB 3.0.12 to 3.1.8 applying the elegance style, the Board 3 portal extension and the Tapatalk extension. I integrated the old logo. To make the Administration Control Panel look like a new board, I had to manually remove many dead modules that were used for old phpBB 3.0 modifications. I also had to change the user_style to prosilver (user_style_id=1) for all users, add a row in the styles table for prosilver and remove the old bogus style from the database. The Board 3 portal had to have modules added and blocks added manually.
  • For an existing client who was going through the process of moving their phpBB3 database from SQL Server to MySQL, I continued work started in February. After the client approved the integrity of the data in MySQL, I made the test forum I created to hold the MySQL database the production forum. I archived the old forum’s files and database. Once on the new database, I upgraded phpBB from 3.1.6 to 3.1.8. I placed the logo on the new files. I then went through all the user groups and made sure they had no forum access. Group forum permissions are to be reset in a subsequent task.
  • Upgraded forum from phpBB 2.0.22 to 3.1.8. I installed the Blue Turtle style and Pages extension. I rebuilt the search index. I redirected content to the forum folder. Later I installed proformell style the user decided he liked better and added user’s logo to it.
  • Upgraded phpBB from 3.0.12 to 3.0.14 and my digests mod from 2.2.25 to 2.2.27 for an existing client. The user complained of missing poster names in digests. I upgraded digests hoping upgrade will solve that problem that curiously no one else had reported. Scoped out the customer for an upgrade to phpBB 3.1. However, he had me integrate some custom code for 3.0 to send out emails for every post made, so this functionality would be lost with an upgrade to 3.1 so will not be done now. Later, I upgraded the Tapatalk modification to the latest version. I removed modifications for ForumRunner and mChat since they are unused.
  • Upgraded a forum from phpBB 3.0.14 to 3.1.8. Installed “basic” style. Added a home page link. Enabled contact page. Modified overall_header.html to show a different logo. Installed a SCSS compiler extension if needed. Created 3 logos for various screen widths but in the end used the largest logo and letting it resize for all devices. I changed text on home link. I padded to area the left of the category image to make it look even. I had to resolve issues with FTP not working properly, which went away when I used the IP for the server name. The domain apparently pointed to Brilliant Directories for client’s eCommerce purposes.
  • Upgraded a forum from 3.0.14 to 3.1.8. Installed we_universal style. Installed beta advertising management extension, and tweaked templates so ad placements looked better to accommodate the style. I changed the overall_header.html template to add the logo, remove the background image and constrain header height. Added the Advanced BBCode extensions.
  • Upgraded a forum from phpBB 3.1.7pl1 to 3.1.8.
  • Consulting. A client asked for hosting recommendations based on his usage. I suggested MediaTemple Managed VPS at $55/month.
  • Client had a forum that blew up in the middle of an upgrade from 3.0.11 to 3.1.8. He had backups of database and files. Since the upgrade was likely due to server resource limitations, I moved them to my machine, converted them there and uploaded them. Some images were missing from the files folder, but the client restored them from a backup. Installed a logo.
  • Client had tens of thousands of forum spam posts and hundreds of bogus forum users. I removed some users in the ACP using prune users and certain topics using prune topics, but certain topics had to be removed via a database backend to avoid removing legitimate topics. Since the forum is in Spanish, the Q&A spambot countermeasure would could not be enable until I created a Spanish question. The main index counts were off after this backend cleanup, so these had to be reset manually via phpMyAdmin. To avoid another spam plague, I changed the spambot countermeasure to Q&A and changed the registration to require user respond to a link in an email to complete registration.

February 2016 work summary

A fair amount of work in February. Here are the highlights:

  • A client complained that some users were not receiving digests. I first upgraded digests from 2.2.24 to 2.2.26, hoping that the issue was one of the bugs that had been fixed in 2.2.25 or 2.2.26. One odd factor with the site is that the Joomla content management system is used, but it didn’t seem to affect phpBB except you needed log into Joomla to get into the forum. Later in the month I back ported bugs I found in the digests mod when creating the digests extension into a new version of the digests mod, 2.2.27. This included a fix that likely solved the issue the user was complaining about, since the time window for weekly and daily digests was going out based on GMT, and not server time. I upgraded the client to version 2.2.27 of digests with these bug fixes at no charge.
  • Upgraded a client with a standard prosilver style based forum from 3.0.12 to 3.1.6. Had to move it to my server to do the work as shared hosting had timeouts.
  • Continued work for an existing client. The user agreed to move the forum database from SQLServer to MySQL on a Windows server as a more permanent workaround for bugs I uncovered in phpBB working with large files and a SQLServer database. Based on my research, it looked like MySQL Workbench would work to port the data from SQLServer into MySQL. After much playing with MySQL Workbench, I found that while it worked with some tables it wouldn’t with others, at least not unless I let the tool recreate the tables. I didn’t want to do this because experience suggested it’s a bad thing to change table column types and table constraints from the reference MySQL implementation laid down by phpBB. I was able to get MySQL running on the IIS web server and was able to install phpBB attached to the MySQL database. After much trial and error with MySQL Workbench, I looked at other tools for porting data and discovered SQLYog. Its import tool did the job nicely. Waiting for client approval to turn this database into a production database.
  • Continued work for an existing client. I had set up a copy of the database on new hosting. The test subdomain pointed to the new hosting, the full domain pointed to the old hosting. There were issues of being unable to login to the test forum on the new hosting. I eventually figured out that the issue was cookie related, since the same cookie name was used for both test and production. Changing the board cookie name for the test instance allowed logins to succeed. I answered questions from client in a Skype session. I fixed an error that occurred while saving group permissions, which turned out to be due to the Apache mod_security module being enabled. I disabled it. Client was concerned that search engines not pick up any content. I did some research and discovered that while humans got a “no forums” message, phpBB robot permissions allowed read content to all forums! This is the default setting that the previous consultant hadn’t fixed. Fixed this on both the production and test forums. Changed the appropriate robots.txt file to disallow search engines and robots.
  • Client accidentally overwrote the forum’s config.php and style, making the forum wholly inaccessible. I got the forum working again and reinstalled the old style which I found with an internet search. I had to rename folder with ACP programs to adm, was given a non-standard folder name and upgrades would miss this change. I upgraded the forum from 3.1.6 to 3.1.7-pl1. I installed color rank images in /images/ranks. Installed 3 extensions: national flags, advanced BB codes box and scroll to up and bottom.
  • Upgraded a forum from phpBB 3.1.6 to 3.1.7-pl1.
  • Attempted a rehost a client to hostgator.com but it ultimately failed because shared hosting on Hostgator has a limit of 250,000 inodes per account and the user has over 700,000 inodes. Also by any standards he uses a lot of web space, more than 100GB! I discussed revised hosting advice with client. His problem is not the forum, but PHP Gallery as his users contribute hundreds of thousands of images. I said I was concerned about PHP Gallery software because it’s not being maintained and the eventual cost for him to host all these images in his own space when he has so many files that he will need a dedicated server instead of his current virtual private server. WHM control panel sent him warnings about his MySQL 5.1 database not being supported much longer, so I upgraded him to MySQL 5.5.
  • A client needed help ensuring that only certain groups have private message privileges. After looking at which groups currently had the privilege, I realized he just needed it added for those in the Newly Registered group. This was done in the advanced settings of group forum permissions.
  • Upgraded forum from phpBB 3.0.14 to 3.1.7-pl1 using a colorizit.com black style tweaked and provided by customer. There were issues during upgrade. It seemed to hang. The search tables were huge and seemed to be corrupt. I had to remove a duplicative index for a search table before retrying. Since the search table was huge and it seemed to be where things were hanging, I truncated the search tables and repaired all tables. Then I was able to complete the upgrade. I uploaded and replaced default logo. I recreated search index. All is well.
  • I upgraded digests from 2.2.26 to 2.2.27 on a phpBB 3.0.12 forum.
  • Got involved in a long project to upgrade a forum from 3.0.10 to 3.0.14 integrated with Coppermine photo gallery and a custom app that shows latest posts on a sidebar on the index. It eventually worked without losing any functionality or styling. I moved the test database into production. Client is very happy as he has had a number of other developers try to do this and I’m the only one to succeed.
  • I resized and changed transparent logo on the forum header per the client’s request. I also upgraded the forum from phpBB 3.1.6 to 3.1.8.
  • I removed two ad images from the overall_header.html template and added a new one, which was very large so I resized it to fit and put it by itself in the top row, centered. Moved others to keep them alphabetical.

WordPress and phpBB?

Update 19 February 2017 – FYI, bbPress is a WordPress plugin that can add a forum to your WordPress site. It’s not nearly as sophisticated and functional as phpBB but it may be good enough for your needs.


It’s not too surprising that people will want to integrate WordPress and phpBB. WordPress after all is an extremely popular blogging program, but really it’s a lightweight content management system. I use it for this site. Why? Because it’s much easier than doing everything by hand with HTML or even a fancy web page program like Dreamweaver. There are thousands of themes and tens of thousands of plugins that let you extend the functionality of WordPress in lots of ways. The quality of some of these plugin are amazing. The design of some of WordPress themes are as well. All this plus it is free, except possibly for some plugins where you get nagged to buy a “professional” version.

In my mind, WordPress is the best-of-breed lightweight content management system out there and a phenomenal blogging tool. But WordPress has limits. Like any content management system, at some point it becomes not quite enough. Try managing a hundred pages with WordPress, for example. WordPress also has some drawbacks. Unlike phpBB, where a modification and extension review is rigorous and must be approved by a peer-reviewed team of developers to get listed, in WordPress it’s pretty straightforward to get a plugin listed if you follow their coding standards. The quality of plugins are thus suspect.

There are forum plugins for WordPress that are generally decent. None come close to having the quality and breadth of phpBB. This is not surprising. phpBB is a best-of-breed forum solution. It is continuously updated, quality reviewed and has a passionate set of developers who strive to write very good code. Unsurprising I get regular requests to integrate phpBB into WordPress.

WordPress and phpBB can coexist, as long as you keep each in their own spaces. For example you could put the forum in a /forum folder and have the rest of the site in WordPress. However, phpBB can’t use WordPress’s authentication system, and visa versa. phpBB styles don’t match WordPress themes. A number of clever WordPress developers have tried to bridge the two platforms. The solutions are inelegant. For example, WP-United tries to create a common authentication system, so that if you are a forum user you will also be a user in WordPress. Unfortunately, as of this writing, WP-United supports phpBB 3.0, not 3.1. It’s really just one developer and he seems to not be actively supporting it. Worse, when I have installed it I found it flaky so I didn’t warrant the work. BridgeDD is another effort, but it too only supports phpBB 3.0.

The bigger problem is that clients naturally want phpBB to work inside their WordPress theme, but it won’t. That’s not to say I haven’t done this for a number of clients. I can usually make it work but takes considerable trial and error. Sometimes there are conflicts between WordPress and phpBB styles, such as using similar names for classes. The result is often a solution that looks nice but may run slowly. The larger problem is that if the WordPress theme changes, phpBB won’t automatically pick up the new style changes. Someone has to retrofit it, and that requires someone with expertise in HTML, CSS, phpBB and WordPress.

So phpBB and WordPress don’t dance together and probably never will. One approach I sometimes recommend is to put the forum into a subdomain, like forum.mysite.com so the user sort of expects it won’t look the same. You can also create a domain just for the forum, like mysiteforum.com and link the two. This allows both phpBB and WordPress to inhabit separate areas and do their things elegantly while also setting the user expectation that both have separate purposes.

If you do want to integrate them expect a non-optimal experience at best.

Feel free to contact me if you want me to try but do expect the work to be costly, generally in the hundreds of dollars range, if it can be done at all.

Digests version 2.2.27 released

I created a new and likely last final version of the digests mod (for phpBB 3.0). It is mainly to make some bug fixes, most of which I discovered when testing the digests extension in development. The new version can be downloaded from my digests page.

From the change log:

  • Removed the non-British English language contributions as they are woefully out of date and thus confusing. If a translation is needed, translate from the English version. See contrib/readme.html for more suggestions.
  • Fixed a bug in the unmark all link in Edit subscribers. Also fixed the column headers to collapse language strings into one field.
  • Edit subscribers and balance load digest hour send time now properly converts hour to digest time zone (set in Digests general settings).
  • Removed the ability in Mass subscribe inactive users, since mail_digests specifically filters them out.
  • Fixed an issue in mail_digests.php where it incorrectly reported private messages read.
  • A digest will show a list of subscribed forums in the footer if you selected only certain forums to appear in the digest. If you chose bookmarks, the message in the footer will indicate that bookmarks were chosen.
  • The maximum number of posts in a digest setting works. Previously it was ignored.
  • The new posts only in a digest setting works. Previously it was ignored.
  • Added better pattern matching for removing images in digests if that is elected. Some images were not completely removed.
  • Fixed issues that did not correctly embed the .php suffix in some links.