htaccess переписать с идентификатора страницы на имя не работает

Я вызываю ?page=about использовании метода GET в форме на index.php (т. Е. «About» – это опция выбора). Когда я нажму кнопку «Отправить», URL-адрес будет выглядеть так:

http://example.com/?page=about

Однако я хотел бы, чтобы это выглядело так:

http://example.com/about

но держите скрипт (PHP), работающий на index.php (не делайте и не хотите иметь файл «about»), т.е. Я хотел бы использовать значения GET на одной странице после отправки формы. Я могу заставить PHP-скрипт работать, он реагирует хорошо, но переписывание URL-адресов вообще не работает.

Я попытался переписать следующий htaccess, но он ничего не делает, URL остается таким же, как указано выше.

Мой htaccess:

 Options +FollowSymLinks RewriteEngine On RewriteBase / RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)$ ?page=$1 [L,QSA] 

Я был бы очень признателен за вашу помощь, поскольку я понятия не имею, почему это не работает. Я просматриваю сеть, и все указывают на это правило, но для меня это вообще ничего не делает.

Заранее большое спасибо!

РЕДАКТИРОВАТЬ:

Позвольте мне опубликовать свой PHP-код, который я использую, извините, я пропустил это. На данный момент я удалил атрибут action поскольку я использую его в браузере, который, как я знаю, отправляет мне то же самое при отправке формы:

 <?php $page = $_GET['page']; switch($page){ case 'about': echo 'I am me'; break; case 'galery': echo 'Nice pictures here'; break; } ?> <body> <form action="/" method="get"> <select name="page"> <option value="about">about</option> <option value="galery">galery</option> </select> <input type="submit" value="Submit" /> </form> </body> 

РЕДАКТИРОВАТЬ № 2:

Я должен был добавить action="/" в тег формы, чтобы решение для anubhava работало.

Это должен быть ваш полный .htaccess:

 Options +FollowSymLinks -MultiViews # Turn mod_rewrite on RewriteEngine On RewriteBase / #external redirect from /?page=about OR /index.php?page=about to /about RewriteCond %{THE_REQUEST} ^[AZ]{3,}\s/+(?:index\.php|)\?page=([^\s]+) [NC] RewriteRule ^ /%1? [R=301,L] #internal forward from /about to /?page=about RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME} !-l RewriteRule ^(.+?)/?$ /?page=$1 [L,QSA] 

Пытаться

  ... RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)$ index.php?page=$1 [L,QSA] 

А также

Я вызываю? Page = об использовании метода GET в форме на index.php

Попробуйте позвонить по правильной ссылке? ' /about ' вместо ' ?page=about '