이전 워드프레스 블로그 게시물 URL을 새 것으로 리디렉션하는 방법
My Wordpress 사이트의 블로그 게시물 URL은 다음과 같습니다.
http://example.com/some-random-blog-post-name http://example.com/other-random-blog-post-name http://example.com/in-case-you-dont-get-the-point-theyre-all-different
나의 새로운 워드프레스 사이트에서 나는 그들이 속한 /blog/서브디렉토리에서 살기를 원합니다.
http://example.com/blog/some-random-blog-post-name
이것의 까다로운 점은 이전 URL이 아무런 패턴을 따르지 않기 때문에 인식되지 않는 것과 일치시켜야 한다고 생각합니다.이런 게 거의 효과가 있어요
# Redirect unmatched blog posts to /blog/*
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !blog
RewriteCond %{HTTP_HOST} ^example.com [NC,OR]
RewriteRule ^(.*)$ https://example.com/blog/$1 [L,R=301,NC]
</IfModule>
...하지만 이는 워드프레스의 RewriteRules와 충돌하고, 변경되지 않고 통과해야 하는 다른 모든 사이트 페이지를 깨버립니다.
그렇다면 어떻게 하면 다음을 달성할 수 있을까요?
example.com/some-random-post
301-->example.com/blog/some-random-post
example.com/another-random-post
301-->example.com/blog/another-random-post
example.com/contact/
--> (방향 전환 안 함)
안에서.404.php
테마의 (또는 404 핸들러) 이 토막글을 파일의 시작 부분에 사용할 수 있습니다.
<?php
$url = $_SERVER['REQUEST_URI'];
if (stripos($url, "/blog/", 0) !== 0) {
header("Location: " . "/blog" . $url);
exit;
}
// rest of the 404 code
?>
제가 당신이라면 ftp에 새 파일 '블로그'를 만들고 이 새 파일에 있는 모든 오래된 워드프레스를 잘라 붙여넣을 것입니다.이렇게 하면 .htaccess에서 아무것도 변경할 필요가 없고 워드프레스보에서 리디렉션이 자동으로 수행됩니다.
언급URL : https://stackoverflow.com/questions/35948704/how-to-redirect-old-wordpress-blog-posts-urls-to-new-ones
'programing' 카테고리의 다른 글
ORM과 ODM의 차이점은 무엇입니까? (0) | 2023.10.16 |
---|---|
대기 없이 비동기 메서드 호출 #2 (0) | 2023.10.16 |
JS를 통한 우커머스 변경 상품 변경 (0) | 2023.10.16 |
Oracle/SQL의 ROWID 데이터 유형 (0) | 2023.10.16 |
양식 제출 버튼 "rails way"를 비활성화하는 방법? (0) | 2023.10.11 |