.htaccess 파일에서 $ 1 [QSA, L]은 무엇을 의미합니까?
나는 나의 것을 바꿔야 하고 내가 .htaccess
이해하지 못하는 두 줄이있다.
RewriteCond %{REQUEST_FILENAME} !-l
RewriteRule ^(.+)$ index.php?url=$1 [QSA,L]
이 라인을 언제 어디서?
완전한 튜토리얼을 제공하는 곳은 완전한 여기서는 짧습니다.
RewriteCond는 기본적으로 "참인 경우에만 다음 RewriteRule 실행"을 의미합니다. !-l
경로 요청 (링크가 아니라는 조건 !
수단이 아닌 -l
수단 링크)
한다한다 RewriteRule은 기본적으로 요청 고객이 일치 여부하는 것을 완료하면 것을 의미한다 ^(.+)$
(서버 루트를 제외한 모든 URL과 일치)로, 다시 작성됩니다 그것은 index.php?url=$1
에, 대한 요청 고객 의미 olle
로 re-작성됩니다 index.php?url=olle
).
QSA
원래 URL로 전달되는 쿼리가 있다는 것을 의미합니다 ( olle?p=1
로 다시 작성 index.php?url=olle&p=1
됩니다.
L
규칙이 일치하면 규칙 아래의 RewriteRules를 더 이상 처리하지 않을 경우 의미합니다.
이에 대한 자세한 정보를 보려면 위의 링크를 살펴보십시오. 재 작성 지원은 이해하기가 조금 어려울 수있는 스택 몇 가지 오버플로에 대해 배울 수 있습니다.
다음 조건이 참이면 URL을 다시 작성하십시오.
요청 된 파일 이름이 디렉토리가 아닌 경우
RewriteCond %{REQUEST_FILENAME} !-d
요청 된 파일 이름이 존재하는 일반 파일이 아닌 경우
RewriteCond %{REQUEST_FILENAME} !-f
요청 된 파일 이름이 릭 링크가 아닌 경우
RewriteCond %{REQUEST_FILENAME} !-l
그런 다음 다음과 같은 방법으로 URL을 다시 작성합니다
. 전체 요청 파일 이름을 가져와 "url"쿼리 변수의 값으로 index.php에 제공합니다. 추가 쿼리 매개 변수 (QSA)로 원래 URL의 쿼리를 추가 하고이 .htaccess 파일 (L) 처리를 중지합니다.
RewriteRule ^(.+)$ index.php?url=$1 [QSA,L]
이 같은 파일에 대한 요청을 처리 version
, release
및 README.md
등 (의 / 릴리스 경우와 같이) 정의 나 같은 경우, 엔드 포인트로 중 하나를 처리해야하는 "찾을 수 없습니다."
참고 URL : https://stackoverflow.com/questions/12551382/what-does-1-qsa-l-mean-in-my-htaccess-file
'IT' 카테고리의 다른 글
scipy / numpy로 용어에서 데이터 비닝 (0) | 2020.08.29 |
---|---|
writeToFile : atomically : 데이터를 카트리지 쓰나요? (0) | 2020.08.29 |
stdin과 SSL을 연결하는 방법은 무엇입니까? (0) | 2020.08.29 |
Xcode 프로젝트에서 사용하지 않는 이미지를 찾는 방법은 무엇입니까? (0) | 2020.08.29 |
Django URL 리디렉션 (0) | 2020.08.29 |