XAMPP .htaccess mod_rewrite не работает

Я запускаю XAMPP для Windows 5.6.11. У меня есть следующий файл PHP:

C:\xampp\htdocs\www.johndoe.com\index.php 

к которому я обращаюсь

 http://localhost/www.johndoe.com/ 

На самом деле мне нужно получить доступ к следующей странице:

 http://localhost/www.johndoe.com/?value=about 

как одно из следующих двух:

 http://localhost/www.johndoe.com/about/ http://localhost/www.johndoe.com/about 

поэтому в моем файле .htaccess есть следующее:

 RewriteEngine on RewriteRule ^www\.johndoe\.com/about/?$ www.johndoe.com/?value=about 

Однако это не работает, так как доступ к прежним сайтам дает мне 401 (не найден).

Вот что я имею в C:\xampp\apache\conf\httpd.conf :

 <Directory /> AllowOverride none Require all denied </Directory> DocumentRoot "C:/xampp/htdocs" <Directory "C:/xampp/htdocs"> Options Indexes FollowSymLinks Includes ExecCGI AllowOverride All Require all granted </Directory> 

Что я должен сделать, чтобы файл .htaccess был разобран и выполнил замену, в которой я нуждаюсь?

Я попытался поставить следующее в C:\xampp\apache\conf\httpd.conf :

 <Directory /> AllowOverride all Require all allowed </Directory> 

но им не повезло. Я даже попытался изменить файл .htaccess на следующее:

 RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteBase /www.johndoe.com/ RewriteRule ^about/?$ ?value=about 

но я все еще получаю сообщение об ошибке 404.

Как оказалось, при конфигурации XAMPP по умолчанию нет необходимости в C:\xampp\apache\conf\httpd.conf , поэтому нет необходимости перезапускать Apache, поскольку мы просто вносим изменения в C:\xampp\htdocs\www.johndoe.com\.htaccess . Как объясняет этот пост в RewriteBase , нам не нужен RewriteBase поскольку мы не будем использовать абсолютные пути в целевых ссылках для правил .htaccess . Поскольку относительные ссылки в этих правилах назначения будут относиться к каталогу, который мы обслуживаем, нам нужно удалить каталог www.johndoe.com из правила:

  • Поместите .htaccess в “ C: \ xampp \ htdocs \ http://www.johndoe.com`.
  • Поместите в нее следующий референс:

     RewriteEngine on RewriteRule ^about/?$ index.php?value=about