단일 도메인을 제공하는 서버에서 여러 도메인을 제공하는 서버로 코드를 이동하고 있습니다. 나는 다른 도메인을 처리하기 위해 명명된 가상 호스트를 사용합니다. URL 재작성은 수행되지 않습니다
- 다른 도메인도 작동하기 때문에 이 서버에서 가상 호스팅이 작동한다는 것을 알고 있습니다.
- pingtest.iguiders.com을 클릭하면 www/ping/에 남겨둔 index.html 파일이 표시되기 때문에 이 특정 도메인이 실행 중이라는 것을 알고 있습니다. ("ping"은 pingtest가 가리키는 디렉토리입니다. 왜냐하면 테스트가 성공한 후 실제 도메인 이름 ping.iguiders.com이 여기를 가리킬 것이기 때문입니다)
- 내 다른 도메인이 이 서버를 광범위하게 사용하기 때문에 htaccess가 일반적으로 이 서버에서 실행된다는 것을 알고 있습니다.
- 원래 htaccess를 사용하고 작동하는 다른 가상 호스트에서 /sites-available에 pingtest.iguiders.com을 복사했습니다. 방금 서버 별칭과 문서 루트를 변경했습니다.
- 가상 호스트 정의에는 RewriteEngine On이 포함되어 있습니다.
전체 .htaccess 파일입니다.
RewriteEngine on
RewriteLog "/var/log/rewrite.log"
RewriteLogLevel 7
# Pings for ping server
RewriteRule ^0.02/ping/$ ping_functional.php [L,qsa]
RewriteRule ^0.03/ping/$ ping_functional.php [L,qsa]
RewriteRule ^0.04/ping/$ ping_functional.php [L,qsa]
RewriteRule ^0.05/ping/$ index.html [L,qsa]
하지만 pingtest.iguiders.com/0.05/ping/을 시도하면 예상한 index.html 파일을 얻지 못합니다(0.02, 0.03 등도 작동하지 않습니다). 404가 나옵니다. 내가 정의한 다시 쓰기 로그를 볼 수 없기 때문에 .htaccess가 전혀 액세스되지 않는 것 같습니다.
내가 엉망으로 만든 게 분명 있나요?
답변1
/
RewriteRule ^0.02/ping/$
, 와 ^
중 하나를 놓치셨나요 0.02/ping/
? 제거되거나 으로 교체 되면 ^
어떻게 되나요 ^/
?