Rewrite URL witth ActiveCollab

By default, activeCollab will use URL-s containing /public/index.php in order to avoid having mod_rewrite as a system requirement. If, from some reason, this system does not work (you get “No input file specified error” for instance) or you just want to have 100% clean URL, then please follow the instructions bellow.

Create a file named .htaccess at the folder where activeCollab is installed, and add these lines:

Options -Indexes

  RewriteEngine On

  RewriteCond %{REQUEST_FILENAME} -f [OR]
  RewriteCond %{REQUEST_FILENAME} -d
  RewriteRule ^(.+) - [PT,L]

  RewriteRule ^projects_icons/(.*)$ public/projects_icons/$1 [L]
  RewriteRule ^avatars/(.*)$ public/avatars/$1 [L]
  RewriteRule ^logos/(.*)$ public/logos/$1 [L]
  RewriteRule ^thumb.php$ public/thumb.php [L]
  RewriteRule ^captcha.php$ public/captcha.php [L]
  RewriteRule ^$ public/index.php [L]
  RewriteRule ^(.*) public/index.php?path_info=$1 [L]

Now open config/config.php and update value of ROOT_URL to exclude /public from the end. If it was:

define('ROOT_URL', 'http://projects.example.com/public');

make it:

define('ROOT_URL', 'http://projects.example.com');

After this declaration (not before, it will not work), add the following three lines:

define('URL_BASE', ROOT_URL . '/');
define('ASSETS_URL', ROOT_URL . '/public/assets');

Find following line:

define('PATH_INFO_THROUGH_QUERY_STRING', true);

and remove or comment it. To comment a line in PHP configuration file, just add // in front of it:

// define('PATH_INFO_THROUGH_QUERY_STRING', true);
Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s