새 클라이언트에 대한 새 웹 사이트 시작.간단한 mod_rewrite 지저분한 레거시 URL에 대한 RewriteRule
example.com/products.aspx?category=Foo&product=SuperLongNoBreakProductNameIDDescription
example.com/products.aspx?category=Foo&product=ProductNameDescription&var1=1293.123
example.com/products.aspx?category=Bar&product=ProductCategoryProdNameRandomNumbers
올드 URL의 예를 자신의 이전 사이트는 약 50 제품을 가지고 불행하게도, 이전 제품 이름은 새로운 URL 패턴에 일치하지 않습니다
(이전 URL은 150자를 초과하는 경우가 있습니다.)
,210새로운 URL의 :
example.com/products/category/actual-product-name
정해진, 새로운 일에 이전 제품 이름에서 갈 인식 패턴이 없습니다. 카테고리가 있습니다.
간단한 mod_alias Redirects를 시도했지만 대신 RewriteRule이 필요하다는 것을 이해했습니다. 하지만 문제가 있습니다. 내가 필요한 것은이 50 개의 URL 각각에 대해 일대일 리디렉션입니다. 나는 다음과 같이 할 수있을 것이라고 생각했다 :
RewriteRule ^/products.aspx?category=Foo&product=ProductName
/products/category/new-product-name/ [R=301,NC]
그러나 그것은 작동하지 않는다. 나는 이것이 단순해야한다는 것을 알고 있지만, 나는 붙어있다. 어떤 아이디어?
정확히 작동하지 않는 것은 무엇입니까? – Jonathan
좋은 양식의 경우 마침표를 빠져 나와야합니다. 'products \ .aspx'. 또한 RewriteCond에 대한 아래의 답변을 참조하십시오. 나중에 .htaccess에 다시 쓰인 URL에 영향을 줄 수있는 다른 RewriteRules가 있습니까? 외부 리다이렉션을 할 때'L' 플래그를 사용하고 싶을 수도 있습니다. – JMM
응답 JMM에 감사드립니다. 다른 다시 쓰기 규칙은 없습니다. 나머지 사이트는 단순한 리디렉션으로 처리 할 수 있습니다. 외부 리디렉션도 없습니다. –