Report this

What is the reason for this report?

.htaccess not being loaded in Ubuntu 14.04 (Apache 2.4.7)

Posted on September 12, 2014

I’m trying to use the .htaccess file in Ubuntu 14.04 (Apache 2.4.7).

Here is what my .htaccess looks like

    # 1 YEAR
    <FilesMatch "\.(ico|svg|woff|eot|ttf)$">
    Header set Cache-Control "max-age=31536000, public"
    </FilesMatch>
    
    # 1 WEEK
    <FilesMatch "\.(jpg|png|gif|css|js)$">
    Header set Cache-Control "max-age=604800, public"
    </FilesMatch>
    
    # Add correct content-type for fonts 
    AddType application/vnd.ms-fontobject .eot
    AddType font/ttf .ttf
    AddType font/otf .otf
    AddType font/x-woff .woff
    AddType image/svg+xml .svg
     
    # Compress compressible fonts
    AddOutputFilterByType DEFLATE font/ttf font/otf image/svg+xml

I enabled mod_rewrite using a2enmod rewrite

Then I edited /etc/apache2/apache2.conf as follows

    <Directory /var/www/>
    	Options Indexes FollowSymLinks
    	AllowOverride All
    	Require all granted
    </Directory>

    AccessFileName .htaccess

However the .htaccess file is still not being loaded. If I add gibberish to the .htaccess file everything still works fine. The .htaccess is located in /var/www/.

Here is the output of apache2ctl -S

  VirtualHost configuration:
   *:80                   is a NameVirtualHost
            default server 127.0.1.1 (/etc/apache2/sites-enabled/000-default.conf:1)
            port 80 namevhost 127.0.1.1 (/etc/apache2/sites-enabled/000-default.conf:1)
            port 80 namevhost edmhunters.com (/etc/apache2/sites-enabled/edmhunters.com.conf:1)
                    alias www.edmhunters.com
   ServerRoot: "/etc/apache2"
   Main DocumentRoot: "/var/www"
   Main ErrorLog: "/var/log/apache2/error.log"
   Mutex default: dir="/var/lock/apache2" mechanism=fcntl
   Mutex watchdog-callback: using_defaults
   Mutex rewrite-map: using_defaults
   PidFile: "/var/run/apache2/apache2.pid"
   Define: DUMP_VHOSTS
   Define: DUMP_RUN_CFG
   User: name="www-data" id=33
   Group: name="www-data" id=33

What did I miss here?



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!

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.

I have created my own directory like /home/mydirectory/public_html and i upload the .htaccess in the public_html directory. I am trying to load but it does not work as i required even i had changed in apache2.conf file

The isssue was that I was placing the .htaccess file in /var/www/ while my DocumentRoot for my website was pointing to a different directory. Moving the .htaccess file to that folder solved the issue.

The developer cloud

Scale up as you grow — whether you're running one virtual machine or ten thousand.

Get started for free

Sign up and get $200 in credit for your first 60 days with DigitalOcean.*

*This promotional offer applies to new accounts only.