Hem www => www olmayan hem de www => www olmayanların tersine yönlendirme kodu. .Htaccess dosyasında sabit kodlama alanı ve şeması yok. Böylece başlangıç etki alanı ve http / https sürümü korunur.
APACHE 2.4 VE YENİ
WWW OLMAYAN => WWW:
RewriteEngine On
RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteRule ^ %{REQUEST_SCHEME}://www.%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
WWW => WWW OLMAYAN:
RewriteEngine On
RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]
RewriteRule ^ %{REQUEST_SCHEME}://%1%{REQUEST_URI} [R=301,L]
Not:% {REQUEST_SCHEME} kullanılabilir olmadığı Apache 2.2'de çalışmaz. Apache 2.2 ile uyumluluk için aşağıdaki kodu kullanın veya% {REQUEST_SCHEME} yerine sabit http / https kullanın.
APACHE 2.2 VE YENİ
WWW OLMAYAN => WWW:
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteRule ^ http://www.%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
RewriteCond %{HTTPS} on
RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteRule ^ https://www.%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
... veya daha kısa versiyon ...
RewriteEngine On
RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteCond %{HTTPS}s ^on(s)|offs
RewriteRule ^ http%1://www.%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
WWW => WWW OLMAYAN:
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]
RewriteRule ^ http://%1%{REQUEST_URI} [R=301,L]
RewriteCond %{HTTPS} on
RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]
RewriteRule ^ https://%1%{REQUEST_URI} [R=301,L]
...% N yalnızca son RewriteCond sürümünden kullanılabilir olduğu için daha kısa sürüm mümkün değil ...
.htaccess
: tabanlı bir çözüm ben çaptan soru üzerine yöneltilen edilmiş bir soruya ancak stackoverflow.com/a/5262044/367456