これは私のために働く:
.htaccess
RewriteEngine On
RewriteRule ^([^/\.]+)/([^/\.]+)/?$ profile.php?county=$1&name=$2&id=1
profile.php
<h1>Profile</h1>
<?php
echo "County: " . $_GET['county'] . "<br>";
echo "Name: " . $_GET['name'] . "<br>";
echo "Id: " . $_GET['id'];
この URL:http://localhost/tests/htaccess_test/Cheshire/Martin-Mack
この HTML を作成しました:
<h1>Profile</h1>
County: Cheshire<br>Name: Martin-Mack<br>Id: 1

Apache 2.2.21 および PHP 5.3.10 でテスト済み。
私のテストでは、両方のファイルを にhttp://localhost/tests/htaccess_test/
配置しましたが、好きな場所に配置できます。それらは同じフォルダーにある必要があるだけです。
たとえば、あなたの場合、ファイルをWebサイトのルートに配置して、にアクセスしたときhttp://www.yoursite.com/Cheshire/Martin-Mack
にリダイレクトが機能するようにする必要があります。
それでも動作しない場合は、RewriteBase /
直後に追加してみてくださいRewriteEngine On
。
完全な例:
RewriteEngine On
RewriteBase /
RewriteRule ^([^/\.]+)/([^/\.]+)/?$ profile.php?county=$1&name=$2&id=1
更新:元のコードでは、id
パラメーターは静的です。それも機能させるには、これを試してください:
RewriteEngine On
RewriteRule ^([^/\.]+)/([^/\.]+)/([^/\.]+)/?$ profile.php?county=$1&name=$2&id=$3