2014-02-07 1 views
0
www.mysite.com/foo/article?id=8888&area=9999 

위의 페이지에는 약 20 개의 링크가 있습니다. 이러한 링크 중 하나를 클릭하면, 사용자는로 이동합니다 :mod_rewrite를 사용하여 참조 URL에서 인수를 보존합니다.

www.mysite.com/foo/a_new_page 

하지만이 링크를 클릭하면, 참조 URL의 인수를 보존 추가됩니다이다 (htaccess로 파일을 사용하는) 일이 원하는 것을 동일한 링크를 클릭하면 다음 페이지로 이동하게됩니다.

www.mysite.com/foo/a_new_page?id=8888 

그러나 나는 그것을 알아낼 수 없습니다. QSA를 사용하여 추가 할 필요가 있으며 설정 될 수있는 항목을 덮어 쓰지 않아야 함을 알고 있습니다. 그러나 참조 URL에 인수가 있는지 테스트하고 다른 페이지를 통해 인수가 보존되도록 추가하는 방법을 알아낼 수 없습니다.

아이디어는 어떻게됩니까?

+0

현재 htaccess로는 무엇입니까? –

+0

.htaccess 파일을 포함하도록 내 게시물을 업데이트했습니다. – Nadine

+0

새 페이지를 어떻게 결정합니까? 어디에서'/ a_new_page'를 얻을 수 있습니까? 사용자가이 페이지로 이동했다고하셨습니다. –

답변

1

시도 :

RewriteEngine On 
RewriteCond %{QUERY_STRING} !^id= 
RewriteCond %{HTTP_REFERER} ^https?://(www\.)?mysite\.com/.*\?id=([^&]+) 
RewriteRule ^foo(.*)$ foo/$1?id=%2 [L] 
+0

나는이 일을 전혀 할 수 없습니다. 인자를 추가하지 않고 URL로 연결됩니다 :/ – Nadine

+0

@Nadine mod_rewrite가로드되어 작동합니까? htaccess가 읽고 처리됩니까? 너는 적당한 referer을 가지고 있니? –

+0

마지막 편집을 참조하십시오. 거의 코드가 작동하도록했습니다. 이제 리다이렉트가 나에게 전달됩니다. 다시 쓰기가 작동하며 리디렉션 쓰레기를 해결해야합니다. – Nadine

관련 문제