Basit olması gereken bir şey bulmakta zorluk çekiyorum. Bir dizindeki her şeyi 301 yeni bir konumda tek bir dosyaya yönlendirmek istiyorum. Benim .htaccess
yılındaBir Dizinden Tek Dosyaya 301 Yönlendirmesi
, zaten şu ...
Redirect 301 /myDir/ http://www.mydomain.com/myNewDir/index.html
ve bu ...
Redirect 301 /myDir/ http://www.mydomain.com/myNewDir/
ve bu ... denedim
Redirect 301 /myDir http://www.mydomain.com/myNewDir
sorunu, bunların her birinin yalnızca 01 içinde her dosyayı eşleştirmesidirve onu hedef URL’nin sonuna ekleyerek.
Googling sonra ben bunu yapmak söz konusu şey ...
Redirect 301 ^/myDir(.*) http://www.mydomain.com/myNewDir
gördüğünü Ama bu sadece o URL'nin sonuna mevcut dosya konumunu haritalama ediyor ... aynı şeyi yapar.
O sürü bulmak kolay oldu çevrimiçi öğreticiler "yönlendirme .htaccess" ama onlar sadece 'bire-bir dosya eşleme' ya da 'bire-bir dizin haritalama' gibi bariz örnekler göstereceğiz görünmektedir. Bu öğreticiler aynı zamanda çeşitli ilgili dosya direktiflerini ve bunları nasıl kullanacaklarını açıklamayı ihmal ediyor gibi görünmektedir.
Bu özel barındırma hesabı çöp ve ayrıca FrontPage eklentileri yüklüdür. Mod yeniden yazma başarısız olur (tüm siteyi bozar), ancak Redirect 301
satırları düzgün çalışıyor. Bu yeni (FrontPage olmayan) siteyi daha sağlam bir barındırma hesabına taşıyabileceğim kadar Redirect 301
tek liner ile bağlı kalmam gerekecek.
Sadece bir
Redirect 301
/myNewDir/index.html
bulunan
aynı tek bir dosya için
/myDir/
içinde
herşeyi yönlendirmek için nasıl kullanabilirim
? (Mümkünse sadece /myNewDir/
kullanmayı tercih ederim). Lütfen çözümünüzde kullanılan dosya direktiflerini detaylı bir şekilde açıklayınız.
GÜNCELLEME:
Önceden kabul cevap çalışmıyor.
Örnek:
RedirectMatch 301 /myDir1/(.*) http://mydomain.org/newpath/myDir1/index.html
... veriyor bir hatası "Çok fazla yönlendirme açmaya çalışırken meydana geldi."
hedef URL /myDir1/
yerde değil, sadece kök, bu kötü bir döngüye yönlendirilir alacak içeriyorsa bu yüzden /myDir1/(.*)
dize içinde yerIere eşleşen olmasıdır.
Doğru çözüm için kendi gönderdiğim yanıtıma bakın.
RedirectMatch 301 /myDir/.* http://www.mydomain.com/myNewDir/index.html
Referans:
Güzel teşekkür ederim. Bu beni delirtmeye başladı. Bu, tüm bir dizinin (içerideki her sayfa) içeriğini belirli bir sayfaya yönlendirmek için çalışır. – Tom
Ayrıca, daha önce 301 yönlendirme yanlış yere gittiyseniz (sayfanın hedef URL'ye eklenmesi), tarayıcınızın önbelleğini .htaccess'ten yeni kuralı almadan önce temizlemeniz gerekebilir. – Russ