웹사이트에 있는 어떤 파일이나 어떤 것도 삭제하고 싶지 않지만 모든 것을 대중에게 공개하고 싶지 않다고 가정해 보겠습니다. 사용자 정의 페이지를 보기만 하면 됩니다.
파일을 통해 httpd.conf
이 문제를 어떻게 해결할 수 있나요? 어쩌면 다음과 같은 것일 수도 있습니다.
Alias /* /a.txt
답변1
당신은 올바른 길을 가고 있습니다! :)
사용자 정의 페이지를 index.html
서버의 다른 폴더에 붙여넣고 DocumentRoot가 해당 폴더를 가리키도록 합니다. 따라서 현재 사이트가 /var/www/
파일 에 있으면 .conf
다음과 같은 줄이 포함됩니다. 새 사용자 정의 페이지가 있는 디렉터리를 가리키도록 변경하세요 DocumentRoot /var/www
.index.html
또한 새 사용자 정의 페이지가 있는 디렉토리에 액세스할 수 있는 권한이 있는지 확인하십시오. 문서 루트( 이라고 가정 /var/www
)의 경우 conf 파일의 권한은 다음과 같아야 합니다.
<Directory /var/www/>
Options Indexes FollowSymLinks
AllowOverride None
Require all granted
</Directory>
새 디렉터리로 바꾸세요(예 <Directory /var/www2/>
: ).
구성 파일(예: sudo service apache2 restart
또는 sudo /etc/init.d/apache restart
) 이 로드되도록 Apache를 다시 시작하십시오.
이전 사이트로 돌아가고 싶을 때 다시 교체하면 됩니다 :)
답변2
이에 대한 규칙을 다시 작성할 것을 제안합니다.
RewriteCond %{REQUEST_URI} ^/a\.txt$
RewriteRule ^(.*)$ - [L]
RewriteRule ^(.*)$ /a.txt?url=%{REQUEST_URI} [R=302,L,QSA]
이 규칙은 모든 것이 a.txt
루프를 생성하지 않도록 지시해야 합니다.