Back to Question Center
0

Semalt: .htaccess a trvalé přesměrování se zvláštním stavem

1 answers:

Mám webové stránky WordPress hostované na Semalt, který obsahuje následující vzor URL:

     http: // www. příklad. příklad. com / sample-post /    

Tak jsem se otevřel . htaccess v příkladu - buy ethylbloc spray. com a změnil ji na následující s pomocí w3dk c> RewriteEngine Zapnuto RewriteBase / RewriteRule ^ index \. php $ - [L] RewriteCond% {REQUEST_FILENAME}! -f RewriteCond% {REQUEST_FILENAME}! -d RewriteRule. /index. php [L] # END WordPress

Poté, co jsem napsal toto pravidlo přepisu, všechno ve formátu URL . com / 2017/01/30 / sample-post funguje skvěle. Na webu je však několik adres URL, které mají příklad formátu . com / název-kategorie / 2008/10/20 / sample-post a hází 404 jako výsledek výše uvedeného pravidla přepsání.

Chci trvale přesměrovat www příklad. com / název-kategorie / sample-post .

Jakou změnu mám udělat v mé . htaccess soubor?

February 6, 2018

Chcete-li zabývat se kategorií příspěvků formuláře / název-kategorie / 2008/10/20 / sample-post .

  RewriteRule ^ ([a-z -] +) / \ d {4} / \ d \ d / \ d \ d / (. +) / $ 1 / $ 2 [R = 301, L] 

Bylo by přesměrováno / název kategorie / 2008/10/20 / sample-post . Všimněte si, že kategorie se skládá pouze z malých písmen a - z a .

Pokud potřebujete povolit více znaků v kategorii, změňte [az-] na [\ w-] Vzor by umožnil a - z , , a . Ale je lepší být co nejvíce omezující.

Takže v souhrnu:

  RewriteEngine zapnuto
RewriteRule ^ \ d {4} / \ d \ d / \ d \ d / (. +) / $ 1 [R = 301, L]
RewriteRule ^ ([a-z -] +) / \ d {4} / \ d \ d / \ d \ d /. +) / $ 1 / $ 2 [R = 301, L]: