У меня есть следующая функция RewriteMap:
RewriteMap map_company txt:/var/www/vhost/domain.com/httpdocs/map_company.txt
Я пытаюсь переписать свой index.php?shop_id=1 в /company-name/
поэтому мой файл map_company.txt содержит: company-name 1
Кажется, я не могу заставить его работать. Вот мой файл htaccess:
# tried this
RewriteRule ^([a-zA-Z0-9_-]+)/$ index.php?shop_id=${map_company:$1} [NC,L,QSA]
#and this
RewriteRule ^(\d+)/$ index.php?shop_id=${map_company:$1} [NC,L,QSA]
Если я это сделаю, то получаю сообщение об ошибке: Файл не существует: /var/www/vhosts/domain.com/httpdocs/company-name
У кого-нибудь есть идеи? Мне также нужно убедиться, что это не влияет на мои стандартные папки, такие как «css, js, images».
file does not exist
, аргументы в вашем файле карты перезаписиmap_company.txt
меняются местами. Первый аргумент в каждой строке — это значение для сопоставления, а второй — значение замены. http://httpd.apache.org/docs/2.4/rewrite/rewritemap.html#txt - person curiouser   schedule 23.04.2018