본문 바로가기
개발/기타 문제해결

.htaccess

by 향유 2021. 2. 22.

.htaccess는 하이퍼텍스트 액세스의 준말로, 웹 서버 구성의 분산된 관리를 목적으로 한다.

 

RewriteEngine On

 

RewriteEngine On 은 파라미터 값을 url 형식으로 변경 해주는 역할을 합니다

 

localhost/index.php?data=test라는 형식을 localhost/index/test라는 식으로 디렉토리 구조처럼 변환시켜 주는 구문입니다.

 

RewriteBase /

root폴더를 어디에 두는 것인지 설정하는 파일로 

url 로 localhost 서버로 들어오면 어떤 폴더부터 시작하는지 알려주는 것

RewriteCond

RewriteCond는 하단의 RewriteRule의 URL재설정으로 가기 위한 필터의 역할입니다.

example


RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_URI} ^/_module|shop|mypage/ [OR]
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /router.php?url=$1 [L,QSA]

 

 

RewriteCond %{REQUEST_FILENAME} !-f

구문중 파일이 존재하는지를 판단

 

RewriteCond %{REQUEST_URI} ^/_module|shop|mypage/ [OR]

'_module','shop','mypage' 데이터 차단

 

RewriteCond %{REQUEST_FILENAME} !-d

디렉터리인지 판단

 

RewriteRule ^(.*)$ /router.php?url=$1 [L,QSA]

모든 url을 url파라미터값으로 입력

 

* QSA의 뜻은 리라이트 된 URI 뒤에 존재하는 query string을 붙이라는 뜻

* L의 뜻은 이후로 다른 룰을 적용하지 말라는 의미.

댓글