.htaccess, mod_https 및 기본 인증
저는 워드프레스 사이트에서 작업하고 있으며, 제 페이지는 mod_rewriting하여 디렉토리처럼 보이는 영구링크 구조를 사용하고 있습니다.몇 페이지의 경우 기본 인증을 사용하여 몇 페이지의 암호를 보호하고자 합니다.내 .htaccess 파일에 이 내용을 어떻게 적어야 합니까?파일을 보호하고 있습니까, 아니면 다시 작성한 주소를 보호하고 있는 건가요?
이를 위해 mod_rewrite가 필요하지 않습니다. 이 방법이 효과적이기를 바랍니다.
SetEnvIfNoCase Request_URI ^/some/path/to/protect require_auth=true
SetEnvIfNoCase Request_URI ^/another/protected/path require_auth=true
# Auth stuff
AuthUserFile /var/www/htpasswd
AuthName "Password Protected"
AuthType Basic
# Setup a deny/allow
Order Deny,Allow
# Deny from everyone
Deny from all
# except if either of these are satisfied
Satisfy any
# 1. a valid authenticated user
Require valid-user
# or 2. the "require_auth" var is NOT set
Allow from env=!require_auth
mod_auth 및 mod_env 모듈은 mod_rewrite보다 우선해야 하며 따라서 가짜 디렉터리 구조는 동일해야 합니다.당신은 단지 한가지를 작성하기만 하면 됩니다.SetEnvIfNoCase Request_URI ^/some/path/to/protect require_auth=true
각자 필요에 맞게 나머지 저작물을 작성합니다.
이 솔루션에 대한 유일한 문제는 취소 버튼을 클릭하면 보호된 페이지가 표시된다는 것입니다.다음을 사용하여 이 문제를 해결하려고 했습니다.
RewriteCond %{REMOTE_USER} !user
RewriteRule ^/protected-page /unauthenticated-page [R=401]
하지만 그것은 효과가 없었습니다.왜 그런지 모르겠습니다.
문제를 빨리 해결하기 위해 나는 추가했습니다.
ErrorDocument 401 "You don't have access."
리디렉션을 만드는 데 사용했습니다.
ErrorDocument 401 '<html><head><meta http-equiv="refresh" content="0; url=/unauthenticated-page" /></head><body></body></html>'
저와 같은 문제를 가지고 오신 분들을 위해 이렇게 .htaccess로
AuthType Basic
AuthName "some_name"
AuthUserFile "/path/to/password/passwd"
require valid-user
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
위의 규칙이 예상대로 작동하지 않습니다(승인 후 다시 쓰기).
지시 병합 순서 때문에("If"가 마지막으로 병합되는 경우)
그 점을 지적해 준 알렉의 코멘트에 감사드립니다.
IfModule 괄호를 제거하면 규칙이 효과를 발휘하기 시작했습니다.
언급URL : https://stackoverflow.com/questions/12203989/htaccess-mod-rewrite-and-basic-authentication
'programing' 카테고리의 다른 글
Wordpress 플러그인 설치 실패 (0) | 2023.09.13 |
---|---|
마리아DB는 키 길이 없이 BLOB 열에 색인을 작성할 수 있습니까? (0) | 2023.09.13 |
C의 Const 배열 (0) | 2023.09.13 |
wp_get_attachment_image에 속성 추가 (0) | 2023.09.13 |
요소의 텍스트 노드를 가져오는 방법? (0) | 2023.09.08 |