I have been trying to do simple maping with RewriteMap directive in my htaccess, but for some reason i am getting error 500 everytime. my syntax is .. Options +FollowSymLinks
RewriteEngine on
RewriteBase /
RewriteMap name2id txt:nklist.txt
RewriteRule ^/name/(.*) /name_list_view.php?kid=${name2id:$1|NOTFOUND}
in nklist.txt :
1 David
2 Mark
3 Simon
the nklist.txt file is on the root of my website , same place where the htaccess is . As far as my debugging tells me that htaccess is not able to find the nklist.txt file, but any help would be thankful.
From your description, you're attempting to define a
RewriteMap
in a per-directory context via your.htaccess
file, but this isn't allowed. TheRewriteMap
can only be defined in a per-server context, either in the main server configuration or in a virtual server section.When you make requests to the server and the
.htaccess
file is parsed, it encounters theRewriteMap
directive and issues an alert, which results in an 500 error being thrown. You'll likely see an entry in yourerror_log
that states "RewriteMap not allowed here".