2015-02-07 4 views
0

나는 이전 웹 사이트의 업데이트 된 버전 인 Wordpress 사이트를 만들었습니다. 이전 웹 사이트에는 이미 Google 검색에서 일부 링크가 많으며 htaccess 형식의 이전 페이지를 새 페이지로 리디렉션하려는 경우 (도메인은 동일하게 유지됩니다). 예를 들어 나는이htaccess로 Wordpress에서 페이지 리디렉션

/index.php?event=newsdetails&news_id=139&parent_id=4&menu_id=1 

같은 링크를 가지고 있고 나는 그것을 할 수있는 방법이

/blog/my/link 

로 리디렉션하려면? 그것은 어떤 도메인 (예를 들어 새로운 사이트가 현재 테스트 도메인에있는 경우)에서 작동 할 수 있도록 그렇게 할 수 있습니까? 여기 내 htaccess로 파일이지만, 내가 원하는 방식으로 작동하지 않습니다 :

redirect 301 /old/old.html http://www.new.com/new.html 

참고 : 추가하지 마십시오

RewriteEngine On 
RewriteBase/

#RewriteCond %{HTTP_HOST} ^(www\.)?pchig\.pl$ [NC] 
#RewriteRule !^pl/ /pl%{REQUEST_URI} [L,NC] 

RewriteRule ^index\.php$ - [L] 

# add a trailing slash to /wp-admin 
RewriteRule ^([_0-9a-zA-Z-]+/)?wp-admin$ $1wp-admin/ [R=301,L] 

RewriteCond %{REQUEST_FILENAME} -f [OR] 
RewriteCond %{REQUEST_FILENAME} -d 
RewriteRule^- [L] 
RewriteRule ^([_0-9a-zA-Z-]+/)?(wp-(content|admin|includes).*) $2 [L] 
RewriteRule ^([_0-9a-zA-Z-]+/)?(.*\.php)$ $2 [L] 
RewriteRule . index.php [L] 

#Redirections 
RewriteRule ^/index.php?event=newsdetails&news_id=140&parent_id=4&menu_id=1(\/.*)?$ /blog/my/link [R=301,L] 
+0

무엇/블로그/내/링크입니다? 그것은 명확하지 않습니다. 'blog'는 서브 디렉토리입니까? '/ blog/my/link'와 같은 예제를 넣지 마십시오. 도움이되지 않습니다. 귀하의 질문에 새로운 사이트의 브라우저에서 링크가 어떻게 보이는지 정확하게 예상하십시오. –

+0

새 링크는 퍼머 링크 여야합니다. 예를 들어/blog/new-year-in-china – JayKey

답변

0

당신은 당신의 .htaccess 파일에 301 리디렉션 추가 할 수 있습니다 문의 첫 번째 부분에 "http://www"- 사이트의 최상위 수준 인 의 경로를 페이지에 배치하십시오. 또한 이러한 요소 사이에 하나의 공간 를 띄워야 :

301 (페이지가 이동 한 것을 지시)

/old/old.htm (원래 폴더의 경로와 파일 이름)

리디렉션

http://www.new.com/new.htm (새 경로와 파일 이름)

검색 엔진이 다시 사이트를 거미 때 그들이 당신이 당신의 .htaccess 파일에 생성 한 규칙을 따릅니다. 검색 엔진 스파이더는 실제로 .htaccess 파일을 읽지 않지만 서버의 응답을 유효한 것으로 인식합니다.

다음 업데이트 중에 이전 파일 이름과 경로가 삭제되어 으로 바뀌며 새 파일로 바뀝니다. 때로는 일 수 있습니다. 전환 중 이전/새 파일 이름 기간과 순위 변동이있을 수 있습니다. Google에 따르면 귀하의 페이지에 반영된 변경 사항을 확인하는 데 6-8 주가 소요됩니다.


당신은 당신이 유닉스 웹 서버에있는 경우 htaccess로 파일이 사용하는 도메인에있는 모든 파일을 재 지정하려면 :

redirectMatch 301 ^(.*)$ http://www.example.com 
redirectMatch permanent ^(.*)$ http://www.example.com 

또한 이들 중 하나를 사용할 수 있습니다 htaccess로 파일 :

redirect 301 /index.html http://www.example.com/index.html 
redirect permanent /index.html http://www.example.com/index.html 
redirectpermanent /index.html http://www.example.com/index.html 

이 사용하여 다른 도메인에 "index.html을"을 리디렉션하는 리디렉션 영구 (301) - 이전.

당신이 http://www.example.comhttp://example.com 리디렉션 할 필요가 당신이 당신이를 넣을 수 있습니다 당신은 mod_rewrite를 서버에서 사용할 수있어 한 경우.htaccess로 파일 :

Options +FollowSymLinks 
RewriteEngine on 
RewriteCond %{HTTP_HOST} ^example\.com 
RewriteRule ^(.*)$ http://www.example.com/$1 [R=permanent,L] 

나이 :

Options +FollowSymLinks 
RewriteEngine On 
RewriteCond %{HTTP_HOST} ^example\.com$ [NC] 
RewriteRule ^(.*)$ http://www.exmaple.com/$1 [R=301,L]