Lütfen kural çalışır eğer hem karakter kodlamaları (. Htaccess dosyasında kullanılan bir ve istenen URI için kullanılan bir) bağlıdır. Ikisi de aynı ise, bu çalışması gerekir.
HTTP üzerinden bir istek için URL kodlama yaparken çoğu kullanıcı arayüzlerinin günümüzde ISO 8859-1 veya UTF-8 kullanabilirsiniz. Ama UTF-8 er ya da geç ISO 8859-1 yerini alacak.
bobince açıklamalarda fark olarak yorumlanırken ve Apache dahili tek bayt kodlama ASCII kullanır. Htaccess dosyaları. UTF-8 gibi multy bayt kodlamayı kullanmak çok zaman sorunları alabilirsiniz. Ancak aşağıdaki kodlayan independed:
# for ISO 8859-1
RewriteRule ^([a-zA-Z0-9\xC4\xD6\xDC\xDF\xE4\xE9\xF6\xFC-]*)/?$ page.php?var=$1 [L]
# for UTF-8
RewriteRule ^(([a-zA-Z0-9-]|\xC3\x84|\xC3\x96|\xC3\x9C|\xC3\x9F|\xC3\xA4|\xC3\xA9|\xC3\xB6|\xC3\xBC)*)/?$ page.php?var=$1 [L]
Ama böyle bir yapı önlemek için, sadece çizgi ve nokta hariç ve PHP ile daha sonra değerini doğrulamak olabilir:
RewriteRule ^([^/.]*)/?$ page.php?var=$1 [L]