2014-07-14 2 views
2

우리 호스팅을 통해 우리 서버의 IP 다음에 물결표 다음에 계정 이름의 처음 8자를 추가하여 특정 계정에 액세스 할 수 있습니다. 그래서 예를 들면 : 리디렉션에서 URL의 특정 부분을 제거하려면 어떻게해야합니까?

example.com/~examples 

우리는이를 다시 작성하는 몇 가지 기본적인 htaccess로 코드가 있습니다 :

123.456.123.456/~examples 

이것은 또한 우리가이 URL을 통해 사이트에 액세스 할 수 있습니다 의미

example.com/ 

무엇 우리는 동일하지만, 사이트 전체의 모든 URL에 대해 .htaccess의 단일 규칙을 사용하여 수행하려고합니다. 그래서 예를 들면 :

example.com/~examples/about-us 

가 재 지정 :

example.com/about-us 

어떤 도움을 많이 감사합니다.

+1

향후 방문자를위한 최선의 답변을 수락 하시거나 질문이 해결되지 않은 경우 답변에 의견을 말씀해주십시오. – Jonan

답변

2

장소 루트의 .htaccess에이 규칙 :

RewriteEngine On 

RewriteCond %{THE_REQUEST} /~\w+/(\S+) 
RewriteRule^/%1 [R=302,L,NE] 

당신은 ~user에 맞게 %{THE_REQUEST} 변수를 사용해야합니다 여기에, 그렇지 않으면 아파치는 REQUEST_URI에서 ~user 제거합니다. THE_REQUEST 변수는 브라우저에서 Apache가받은 원래 요청을 나타내며 일부 다시 쓰기 규칙을 실행 한 후에 덮어 쓰지 않습니다. 이 변수의 값의 예는 GET /~user//index.php?id=123 HTTP/1.1

+0

정확히 필요한만큼 작업합니다. 많은 감사합니다! – stu177

+0

환영합니다. 다행입니다. – anubhava

0

어쩌면이

RewriteRule ^(.*)$ /~example/$1 [L,QSA] 
1

다음은 무엇을해야한다 다음 :

RewriteRule ^~examples\/?(.*)$ $1 [NC,L] 

자세한 내용은 URL Rewriting for Beginners을 참조하십시오.

+0

슬래시를 이스케이프 할 필요가 없습니다.'/' – Jonan

관련 문제