Back to Question Center
0

Redirect Semalt ke domain telanjang dan titik kandungan yang ada ke / blog

1 answers:

Saya fikir. Persediaan htaccess untuk ini sepatutnya agak mudah, tetapi saya mengalami kesukaran dengannya untuk beberapa sebab. Saya baru sahaja menyelesaikan penghijrahan pemasangan tapak tunggal WordPress ke persediaan MultiSite, dan semuanya berjalan dengan lancar - single pay long term care. Sekarang, saya perlu mengalihkan semua jawatan blog asal kepada / blog / (kerana WordPress menguatkuasakan itu pada MultiSite).

Saya baru-baru ini memindahkan semuanya ke domain telanjang. Ini dalam dan dari dirinya sendiri tidak menjadi masalah - sehingga saya menambah dalam komponen / blog / .

Berikut adalah apa yang saya ada untuk peralihan domain telanjang (yang, seperti yang dinyatakan, berfungsi dengan baik):

     RewriteCond% {HTTP_HOST} ^ www \. (. *) $ [NC]
RewriteRule ^ (. *) $ http: //% 1 / $ 1 [R = 301, L]    

Saya telah mencuba beberapa perkara untuk / blog / mengarahkan, tetapi ia terus membuang saya. Nampaknya ia sepatutnya agak mudah dengan RedirectMatch :

     RedirectMatch 301 ^ / (. * /?) $ http: //    / blog / $ 1    

Masalahnya, tentu saja ialah ungkapan ini kemudian menangkap / blog / dan segera menuju ke / blog / blog / blog /

Saya menghadapi masalah yang sama menggunakan pasangan RewriteCond / RewriteRule yang lain, dan ketika saya cuba untuk bekerja di sekitar seperti ini:

     RewriteCond% {HTTP_HOST} ^ (? :( www \. ))? (. *) $ [NC]
RewriteRule ^ (?    

Hasilnya adalah gelung peralihan (saya tidak melihat apa yang menyebabkannya, tetapi kepala saya jelas tidak memproses regex dengan betul pagi ini).

Nampaknya saya seperti RedirectMatch adalah cara untuk pergi pula; Saya hanya perlu pastikan untuk tidak menangkap / blog / sendiri.

Edit: Saya terlupa sepenuhnya tentang ! sebahagian daripada peraturan itu; saya harus memulakannya RewriteMatch dengan ! ^ blog ?

February 8, 2018

Anda boleh melakukan ini:

  RewriteCond% {REQUEST_URI}! ^ / Blog
RewriteRule ^ (/?) (. *) / blog / $ 2 [L, R = 301] 

maka apa-apa yang tidak mempunyai / blog di dalamnya akan ditulis semula untuk mempunyai / blog di dalamnya.

(dirujuk daripada https: // stackoverflow. com / questions / 4844069 / htaccess-rewritebase )