2013-01-24 1 views
1

htaccess redirect에 대해 읽었으며 stackoverflow 및 다른 사이트에서 다시 작성하고 간단한 페이지와 디렉토리를 리디렉션하는 방법을 배웠지 만 리디렉션 할 수 없었던 약 30 개의 링크가 남아 있습니다. 그 이유는 링크의 URL에 "?"이 포함되어 있기 때문인 것으로 보입니다. 게시 된 솔루션을 시도했지만 성공할 수있을만큼 충분한 감각을 갖지 못했습니다.URL에 물음표가있는 이전 페이지를 리디렉션 할 수 있습니까?

이 작업 :

Redirect /Corpfleet.php  htp://www.marketyourcar.cm/wraps.php 
Redirect /drivers.php  htp://www.marketyourcar.cm/drivers.php 
Redirect /galleries.php  htp://www.marketyourcar.cm/galleries.php 

다음은 작동하지 않습니다

Redirect /ad.php?View=FAQ  htp://www.marketyourcar.cm/advertiser-faqs.php 
Redirect /ad.php?View=gallery htp://www.marketyourcar.cm/galleries.php 
Redirect /ad.php?View=Materials htp://www.marketyourcar.cm/products-services.php 

네, URL 위 HTP와 · ㎝ 것을 알고 - 내가 만들기 위해 그것을 깰했다 내 평판 수준이 낮은 게시물.

누구든지 도와 주시면 감사하겠습니다. 감사합니다.

+0

여기 내 문제의 일부는 dev 서버 정보 대신 실제 서버 정보를 제공한다는 것입니다. 나는 라이브 위치에서이 코드를 테스트하지 않기 때문에 dev 설정에 맞게 모든 것을 편집해야합니다 : 파일은 여기에 있습니다 : http : // clients.lancedaoust.com/myc /' 그래서 저는 ' 당신이 저에게 준 코드를 편집했습니다 : 'RewriteRule /myc/ad.php?View=FAQ$ http://www.marketyourcar.com/advertiser-faqs.php [R = 301, L]' –

답변

1

Redirect 처리 할 수 ​​없습니다. RewriteRule 수 있습니다. 이것은 효과가있다.

RewriteEngine on 
RewriteRule ^/ad\.php\?View\=FAQ$ http://www.marketyourcar.cm/advertiser-faqs.php [R=301,L] 
RewriteRule ^/ad\.php\?View\=gallery$ http://www.marketyourcar.cm/galleries.php [R=301,L] 
RewriteRule ^/ad\.php\?View\=Materials$ http://www.marketyourcar.cm/products-services.php [R=301,L] 

또는이 시도 :

RewriteEngine on 
RewriteRule ^/ad.php?View=FAQ$ http://www.marketyourcar.cm/advertiser-faqs.php [R=301,L] 
RewriteRule ^/ad.php?View=gallery$ http://www.marketyourcar.cm/galleries.php [R=301,L] 
RewriteRule ^/ad.php?View=Materials$ http://www.marketyourcar.cm/products-services.php [R=301,L] 
+0

고맙습니다. 방금 시도했지만 작동하지 않았습니다. 404가 생성되었습니다. "찾을 수 없음 요청한 URL /ad.php를이 서버에서 찾을 수 없습니다." –

+0

아파치 설정에서'mod_rewrite'가 활성화되어 있습니까? 또한이 페이지의 오른쪽에있는 관련 링크를 확인하십시오. 내가 게시 한 것의 조합과 다른 사람들의 조언이 효과가 있어야합니다. – JakeGould

+0

방금 ​​mod_rewrite를 사용하는 방법에 대한 자습서를 읽었습니다. 그렇기 때문에 그렇다고 대답했습니다. –

0

이 작동 될 수 있습니다

예 :

RewriteEngine On 
RewriteRule ^/ad.php?View=FAQ$ http://www.marketyourcar.cm/advertiser-faqs.php? [R=301,L] 

들어오는 쿼리를 제거하기 위해 대체 URL에 후행 ?를 추가합니다.

1

당신이 등으로 재 지정하려면 :

site.com/index.php?blabla=1 & ID = 32

site.com/contact.html

는 사용

<IfModule mod_rewrite.c> 
RewriteEngine On 
RewriteCond %{QUERY_STRING} blabla=1&id=32 
RewriteRule ^(.*)$ http://www.site.com/contact.html? [R=301,L] 
</IfModule> 
관련 문제