To setup GrassBlade LRS, your system must meet the following requirements:
- HTTP Server. For example: Apache.
- curl and curl php module (php2-curl)
- PHP 5.6+
- MySQL 4+ (Preferred:5.1.10+)
- PDO PHP Module for MySQL
- XML RPC Extension for PHP (for Groups Integration) – Not required for latest version.
SQL Mode Issue Fix:
You might need to disable the: sql_mode=only_full_group_by which is enabled by default in MySQL 5.7.5+
If it cannot be changed from MySQL. Try these steps:
- Open: app/Config/database.php
- after the line:
'datasource' => 'Database/Mysql',
- Add the following line:
'settings' => array('@@SESSION.sql_mode' => "(SELECT REPLACE(@@sql_mode,'ONLY_FULL_GROUP_BY',''))",),
Note: People are using GrassBlade LRS on Nginx, IIS (on hosts like Azure). So the above requirements are more of recommendations.
Recommendations for IIS/Windows Server:
– You might need to disable WebDAV module. It blocks PUT requests, and some content that send PUT requests will not work. Generally, it can be disabled using web.config file. Sometimes you need to make other adjustments to enable PUT requests.
– There is a sample web.config file included in grassblade-lrs
Recommendations for NGINX:
– NGINX doesn’t use .htaccess but uses a nginx.conf file. There is a sample nginx.conf file in grassblade-lrs, you can use it as reference to configure your NGINX server for URL rewrites.
Popular Hosting Services Used for GrassBlade LRS:
- GrassBlade Cloud LRS
- Lightning Base
For large databases and/or LRS traffic you might need a good Dedicated Server and a good Server Admin, or use GrassBlade Cloud LRS.
Doesn’t work on:
Godaddy Managed WordPress: They won’t disable mandatory caching.
WPEngine: Works fine for small traffic and load. However, not recommended for databases with more than 500,000 statements
Kinsta: We have faced major performance issues on one instance.