WAMP/XAMPP Server- .htaccess redirect rule not working on localhost
Sometimes developer facing the issue that redirects rule is not working on the local machine and get the message like…
Not Found
The requested URL was not found on this server.
Apache/2.4.9 (Win64) PHP/5.5.12 Server at localhost Port 80
See the sample redirect rule in .htaccess
file which removes the .php
extension from the URL.
.htaccess
RewriteEngine On
# .php to extension less
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(([^/]+/)*[^.]+)$ $1.php [L]
RewriteCond %{THE_REQUEST} ^[A-Z]+\ /([^/]+/)*[^.#?\ ]+\.php([#?][^\ ]*)?\ HTTP/
RewriteRule ^(([^/]+/)*[^.]+)\.php http://www.localhost/$1 [R=301,L]
Solution
WAMP Server
If you are using wamp server you need to modify the Apache configuration file httpd.conf
- Go to the C drive/wamp installation location » wamp » bin » apache » apache2.4.9 » conf »
httpd.conf
- In the
Directory
tag, updateAllowOverride
toall
(default none)
httpd.conf
<Directory "c:/wamp/www/">
# AllowOverride controls what directives may be placed in .htaccess files.
# It can be "All", "None", or any combination of the keywords:
# AllowOverride FileInfo AuthConfig Limit
AllowOverride all
</Directory>
XAMPP Server
Modify the same above configuration in xampp server also. You can find httpd.conf
file at this location.
Location: C drive/xampp installation location » xampp » apache » conf » httpd.conf