URL Rewriting

URL rewriting is required for ActiveCollab to work correctly.

Instead of Installer, I get a List of Directories and Files #

That list of directories and files is called directory listing, and Apache presents it when it can't resolve index document:

When this happens, it most definitely means that your URL rewriting is not properly configured on server level. Check out this section to learn how to troubleshoot URL rewriting configuration under Apache.

Installer Reports URL Rewriting Error #

During installation process, ActiveCollab installer will check if URL rewriting works. If it fails, it will show an error, and block installation process:

There are two reasons why URL rewriting check fails.

  1. Your PHP does not have cURL extension installed. In that case, installer will report this error: Can't validate URL rewriting without 'curl' extension. To fix it, you need to install curl PHP extension because it is required for normal operation of the system.
  2. Your web server is not configured to support URL rewriting. When that happens, installer will report URL rewriting is not enabled, and provide error details. Check out this section to learn how to enable URL rewriting under Apache and nginx.

While testing, you can use command line to do what installer is doing. Using SSH connect to the server on which you are installing ActiveCollab and run this command:

1
curl -i http://example.com/activecollab/verify-existence

Issue is resolves only when you get HTTP 200 OK response, containing JSON data that says: {"ok":false}.

Turning off URL rewriting check

If you know that URL rewriting works, but you can't get ActiveCollab Installer confirm that, you can turn it off.

To turn off URL rewriting check, open config/config.empty.php and add:

1
const SKIP_URL_REWRITE_CHECK = true;

prior to require lines.

Server Misconfiguration #

The most common cause of URL rewriting issues is when URL rewriting is not enabled on the server, or when it is enabled, but not configured correctly.

Here are troubleshooting instructions for two servers that we support:

  • Apache: ActiveCollab ships with .htaccess file that has all the required rewrite rules, but your server needs to load it. If it's not doing that, first you need to make sure that you have mod_rewrite enabled. Then, check if your server is configured so it supports .htaccess files. This is controled with AllowOverride directive.
  • nginx: Make sure that your server is configured with required rewriting rules in place. You can find them in System Requirements section of the help.