을, 가변 정보를 어떻게 알아낼 수 있었다 : 당신의 가상 호스트에서
, 당신의 .htaccess에서
RewriteMap lc int:tolower
을 추가, 추가 이것을하기 위해.
.htacces, rewrites 및/또는 regex에 익숙하지 않은 다른 사람들을 돕기 위해 내가 배운 것뿐만 아니라 해결책도 게시했습니다.
내 문제 해결 최종 제품이 같은 전체 htaccess로 보이는
RewriteRule ^blog/bid/[0-9].*/(.*)$ /$2? [R=301,L,NC]
:
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteBase/
RewriteRule ^blog/bid/[0-9].*/(.*)$ /$1? [R=301,L,NC]
</IfModule>
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase/
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
기본적으로 제가 한 것은 패턴에 대한 몇 가지 정규식 마법을 사용 하였다. 내가 말할 수있는 정규식을 사용하여 /bid/
항상 변경 후 번호, 이후이는 [0-9].*
[0-9]
가 0-9 번호가 모든 문자와 일치하여 수행됩니다 "아무리 그 안에 어떤 숫자이 패턴과 일치하지 않습니다." .
은 단일 문자와 일치하며 *
은 해당 문자가 0 개 이상 인 경우 일치합니다.
다음 부분은 마술이 일어나는 부분입니다. 그 이후 슬러그 (퍼머 링크)는 .*
으로 일치하고 ()
에 랩핑되면 변수로 저장됩니다.
그런 다음 내 재 작성의 대체 부분에서 해당 변수를 사용할 수 있습니다. $1
은 패턴 섹션에 (.*)
을 나타내는 변수입니다. ()
에 포장 된 섹션이 더있는 경우 $1
, $2
등을 사용하여 초기 패턴에서 저장된 변수를 사용할 수 있습니다.
일단 완료되면 내 깃발을 설정합니다. R=301
은 콘텐츠가 영구적으로 이동했다는 검색 엔진에 알리는 헤더 리디렉션을 설정합니다. L
은 해당 패턴이 일치 할 때 적용되는 마지막 규칙입니다 (즉, 재 작성 일치를 계속 시도하지 않음). NC
은 대소 문자가 중요하지 않음을 나타냅니다.
참고
는 규칙의 간격에 특별한주의를 기울이십시오. 충분하지 않거나 너무 많으면 전체 웹 사이트가 다운 될 수 있습니다. 깃발 섹션에서 쉼표 사이에 공백이 없어야한다는 사실을 아는 것이 특히 중요합니다. 그게 나 한테 물어./[0-9]/(. *) $/$ 2 RewriteRule의^블로그/입찰 (*.) :
출처
2013-06-06 21:22:12
Ian
는 사실은 간단하게 다음과 같이이 작업을 수행 할 수 있었다? [R = 301, L, NC]. 시스템을 사용하면 대답을 게시 할 것입니다. – Ian