2017-05-05 6 views
1

내 사이트의 유지 관리 페이지를 설정하므로 사용자가 방문하면 503 상태로 반환되고 사용자 정의 maintenance.php 페이지로 리디렉션됩니다. 그래서 잘 작동하고 내 브라우저에서 URL이 내 검색 주소창에 수동으로 입력되는 한 503을 제대로 반환하고 있음을 명확하게 볼 수 있습니다.HTTPS에 대해 503 상태를 구성하는 방법은 무엇입니까?

누군가가 리퍼러의 특정 페이지에 대한 링크를 클릭하면 Facebook에서 maintenance.php 페이지로 리디렉션되지만 어떤 이유로 인해 CSS 파일과 이미지가로드되지 않습니다 . CSS 파일과 이미지는 갑자기 503 상태를 반환합니다.

기본적으로 내 사이트는 "https"및 "www"를 사용하도록 "http"페이지를 리디렉션합니다. "http"에서 같은 페이지를 실행하면 CSS 파일과 이미지가로드됩니다.

그런 다음 URL에 "www"가없는 "https"로 페이지를 실행하면 페이지에 CSS 파일과 이미지가로드됩니다.

는 그래서만큼 보인다 "HTTPS"와 "WWW"는 URL, 페이지, 그것에서 모두 'CSS 파일, 그'이미지는 모두 내 503 개 상태가 구성되어 503

돌아갑니다 내 .htaccess 파일 :

RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REMOTE_ADDR} !^123\.45\.67\.89$ 
RewriteCond %{DOCUMENT_ROOT}/maintenance.php -f 
RewriteCond %{DOCUMENT_ROOT}/maintenance.enable -f 
RewriteCond %{SCRIPT_FILENAME} !maintenance.php 
RewriteRule ^.*$ /maintenance.php [R=503,L] 
ErrorDocument 503 /maintenance.php 
Header Set Cache-Control "max-age=0, no-store" 

서버에서 Apache가 실행 중입니다. URL에 "https"및 "www"가 포함 된 링크를 클릭하면 CSS 파일 및 이미지가로드되도록 구성 할 수 있습니까?

편집 : 또한이 문제가있는 페이지의 URL이 maintenance.php로 리디렉션되지 않는 것으로 보입니다. 이것에도 불구하고 그들은 여전히 ​​maintain.php 내용을 표시하지만.

답변

1

솔루션은 간단합니다. 내 maintenance.php에서 CSS 파일과 이미지 대신 상대 경로를 절대 경로로 변경해야합니다. 앞에 "/"를 추가하십시오.

원래이었다

<link href="/css/maintenance.css" rel="stylesheet" type="text/css"> 
:

<link href="css/maintenance.css" rel="stylesheet" type="text/css"> 

로 변경