Configuring mod_rewrite

Introduction

By default EasyDeposit makes use of mod_rewrite to make the URLs look nicer.

An example of a URL when using mod_rewrite:

  • http://deposit.exmple.edu/easydeposit/uploadfile

The same URL when not using mod_rewrite:

  • http://deposit.example.edu/easydeposit/index.php/uploadfile

Configuring mod_rewrite

The use of mod_rewrite is configured in the .htaccess file in the root of your EasyDeposit installation. A typical .htaccess file looks like this:

RewriteEngine On
RewriteBase /easydeposit
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L]

The only line you should need to change is the RewriteBase directive. This should be set to the subdirectory / subdirectories where you have installed EasyDeposit. Here are some examples:

  • http://deposit.example.edu/ –> Remove the RewriteBase line
  • http://deposit.example.edu/easydeposit/ –> /easydeposit
  • http://deposit.example.edu/theses –> /theses
  • http://deposit.example.edu/theses/phd –> /theses/phd

When using the mod_rewrite option, you must set the $config[‘index_page’] configuration option in application/config/config.php to “” (an empty set of quotes).

How to run EasyDeposit without mod_rewrite

Some hosting providers do not provide mod_rewrite. To run EasyDeposit without mod_rewrite, follow these instructions:

  • Remove .htaccess from the root directory of your EasyDeposit installation
  • Edit application/config/config.php and set the $config[‘index_page’] option to “index.php” (including the quotes)