.htaccess not working on my Ubuntu 14.04 LAMP Stack

  • Posted on July 10, 2014
  • alexmk92Asked by alexmk92

I have just configured my LAMP stack on my Ubuntu 14.04 distribution and want to set .htaccess up to serve a website I am building for a client (he is reluctant for me to use NGINX as his current site sits on top of APACHE)

I followed the tutorial and configured a virtual host for my domain, however I am still unable to use the .htaccess file in my projects root, whenever I try to serve a page I get a 404 error.

The .conf file for my domain looks like:

<VirtualHost *:80>

DocumentRoot /var/www/

<Directory />
		Options FollowSymLinks
		AllowOverride None

<Directory /var/www>
		Options Indexes FollowSymLinks MultiViews
		AllowOverride None
		Order allow,deny
		allow from all

ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined


I tried to change AllowOverride None to AllowOverride All but that caused an internal 500 erorr, can anyone help me out here?

Regards, Alex.

Show comments

Submit an answer

This textbox defaults to using Markdown to format your answer.

You can type !ref in this text area to quickly search our full set of tutorials, documentation & marketplace offerings and insert the link!

Sign In or Sign Up to Answer

These answers are provided by our Community. If you find them useful, show some love by clicking the heart. If you run into issues leave a comment, or add your own answer to help others.

Want to learn more? Join the DigitalOcean Community!

Join our DigitalOcean community of over a million developers for free! Get help and share knowledge in Q&A, subscribe to topics of interest, and get courses and tools that will help you grow as a developer and scale your project or business.

I had the same issue and solved it now.

After enable mod_rewrite We need to change setting of AllowOverride to All

Option 1: Find available sites you created: ls -l /etc/apache2/sites-enabled

Example display:

ls -l /etc/apache2/sites-enabled total 0 lrwxrwxrwx 1 root root 35 Aug 5 15:08 000-default.conf -> …/sites-available/000-default.conf

So your site is in file config: 000-default.conf

Open the file if is there any written there? If you could see the folder setting of AllowOverride, change its setting from “None” to “All” on your main web folder (Ex: /var/www/)

If you could see that the file display empty so you should go to Option 2.

Option 2: Change the apache2 configuration to enable override all Find your apache2.conf, in my case, it’s in /etc/apache2/

So open it and change the expected feature:

sudo vi /etc/apache2/apache2.conf

Change on <Directory /var/www/> AllowOverride none


AllowOverride All

======== My case, it’s working with Option 2.

removing the Options Indexes FollowSymLinks MultiViews worked for me