Без использования JavaScript (что является плохой идеей для изменения основных частей веб-сайта, например поиска), вы не сможете заставить формы отправлять данные на страницу, которая не имеет формы / pagename? Q = query или ж / д.
Но если вы просто хотите побрить расширение .php, это поможет:
Options +FollowSymLinks
Options +Indexes
RewriteEngine on
RewriteCond %{SCRIPT_FILENAME} !-d
RewriteRule ^([^\.]+)$ $1.php [NC,L]
В вашем файле .htaccess это сделает так, что любой файл с расширением .php будет доступен без него.