2011-09-02 4 views
0

일부 재 작성 및 리디렉션 내 htaccess 파일에서 일하고 있습니다. 내 기존 웹 사이트에 대한 새로운 디자인과 레이아웃을 개발 중이므로 Google 순위 등을 유지하기 위해 리디렉션해야하므로 내 이유가 있습니다.동적 재기록 htaccess 파일

기존 URL은 다음과 같습니다.

/news/internet-shopper-numbers-continue-to-grow-$21378232.htm 

새로운 URL은 다음과 같습니다 internet-shopper-numbers-continue-to-grow 동적으로 새로운 URL 같이 small-business-website-design, internet-shopper-numbers-continue-to-grow800715788 모든 곳, 생성 된 이전 URL에서

/industry-news/small-business-website-design/internet-shopper-numbers-continue-to-grow/800715788 

을 동적으로 생성됩니다.

따라서 동적으로 생성 된 변수 중 하나만 사용할 수있는 경우 URL에서 다른 URL로 어떻게 이동합니까?

새로운 URL을 생성하는 데 필요한 모든 데이터를 얻기 위해 데이터베이스를 통해 URL 프로세스에서 데이터를 가져올 수있는 대신 PHP 리디렉션을 수행하는 것이 좋을지 모르겠지만 이것은 좋은 습관입니다, 이것은 또한 현재의 경우가 아닌 오래된 URL 파일 디렉토리와 일치해야한다는 것을 의미합니다.

Options +FollowSymlinks 
RewriteEngine On 
RewriteCond /news/%{QUERY_STRING}(.)(\\d+)(.)(htm)$ 
RewriteRule ^industry-news/(.+)/%1/(\d{9}) 

나는 이것이 매우 기본적이고 좀 잘못 알고 있지만 내가 처음이 작업을 그리고 난 난처한 상황에 빠진 해요 : 내가 추측하고있어

나는 이런 식으로 뭔가 시작합니다.

- 추가 질문 -

나는 같은 것을 할 수 있어요?

RewriteCond /new/%{QUERY_STRING}(.)(\\d+).htm$ 
RewriteRule ^industry-new/article/article.php?direct=%1 

이러한 테스트를 수행하는 방법을 모릅니다.

+0

다음은 자습서입니다. http://www.sitepoint.com/guide-url-rewriting/ – Rijk

+0

감사합니다. 나는이 책을 읽었으며, 많은 자습서를 거쳤고 찾을 수 없었기 때문에 여기 왔었습니다. 무슨 메신저를 찾고 – lukehillonline

답변

1

네, 확실히 모든 리디렉션 작업을 PHP로 수행하는 것이 좋습니다. 당신이 PHP에서 원하고 필요시 위치 헤더를 보내기로 그냥 간단한 "캐치 올"

RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule .* index.php 

htaccess로 다음 변환 된 URL이 있습니다. "이전"URL에 301 상태 코드를 추가하는 것이 좋습니다.

+0

나는 301 그들을 확실히 만들 것입니다, 그냥 주 코드를 내 머리에 넣으려고 지금, 그래서 아마도 % {QUERY_STRING}을 가져 와서 인덱스 파일로 가져 와서 데이터베이스에 대한 변수? – lukehillonline