2012-09-10 9 views
1

다운 스트림 추적을 위해 동적 링크에 변수를 추가해야합니다.특정 대상이 아닌 URL에 변수를 추가하려면 어떻게합니까?

덧붙여 ?var=true은 mysite.com/ 링크에서 작동합니다 (기존 변수를 감지하고있는 경우 &var=true을 추가하고 있음). 그러나 후행 '/'가 없으면 중단됩니다.

앞에 '?' '/'를 사용하면이 문제가 해결되지만 mysite.com/info.php (CSS의 경로 문제) 형식으로 링크가 끊어집니다.

mysite.com?var=true 형식으로 likes를 올바르게 설정하려면 서버 설정 또는 .htaccess가 변경 되었습니까?

mysite.com?var=true  <- broken 

mysite.com/?var=true <- works 

mysite.com/info.php?var=true <-works 

mysite.com/info.php/?var=true <-broken 

서버가 아파치입니다.

감사합니다.

답변

0
RewriteEngine On 
RewriteRule /(.*)$ /info.php?id=$1 

그것, 또는 당신이 웹 사이트의 모든 URL에 변수를 추가 할 경우의 .htaccess 파일

+0

시스템을 작동 할 경우 'mysite.com?var=true'작품의 형태로 변수 링크 'mysite.com/?var=true'와 동일합니다. 'info.php'는 실제 링크를 알 수 없으므로 양식 예였습니다. –

0

에서의 변화를 할 수도, htaccess로이 시도 :

RewriteEngine on 
RewriteCond %{QUERY_STRING} !^(.*&)?var=true(&.*)?$ 
RewriteRule ^(.*)$ /$1?var=true [L,QSA] 

그러나 이것은 사용자의 브라우저에서 URL을 변경하지 않습니다 (추가 된 변수는 보이지 않지만 서버가 표시됩니다). 당신이 표시하려는 경우, 당신은 마지막 줄에 리디렉션 플래그 [R]을 추가해야합니다

RewriteEngine on 
RewriteCond %{QUERY_STRING} !^(.*&)?var=true(&.*)?$ 
RewriteRule ^(.*)$ /$1?var=true [L,QSA,R] 
관련 문제