I just created my server and I need to use .htaccess files, one of them worked and another one didn't... Apparently for .htaccess to work you need to enable AllowOverride, and so I did under: /etc/apache2/sites-available/default
Changed this:
<Directory /var/www/>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>
To this:
<Directory /var/www/>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
</Directory>
When I restart apache my whole site now throws error 500 Internal Server Error
My .htaccess file contains this:
RewriteEngine on
# if a directory or a file exists, use it directly
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
# otherwise forward it to index.php
RewriteRule . index.php
Anyone has any idea why?
Your apache config seems fine to me.
You get 500 Internal Server Error
which means your htaccess
is now executed.
If you didn't enable mod_rewrite you get such errors.
Should be working as expected once mod_rewrite enabled.
Also, don't forget to add a RewriteBase
(which will prevent future problems with virtual directories)
RewriteEngine on
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^ index.php [L]
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With