Apache2 - 이미지 및 CSS는 TLD를 통하지 않고 로컬 네트워크에서만 사용할 수 있습니다.

Apache2 - 이미지 및 CSS는 TLD를 통하지 않고 로컬 네트워크에서만 사용할 수 있습니다.

외부에서 액세스할 수 있도록 동적 DNS 서비스를 사용하는 로컬 컴퓨터에서 Apache/2.2.22(Debian)를 실행하고 있습니다. 일반적으로 이것은 매력처럼 작동합니다.

그러나 DNS 서비스(예: "subdomain.dns.com")에서 제공하는 TLD를 통해 연결하는 경우 서버는 이미지와 CSS 모두 로드를 거부합니다. 네트워크(VPN, 예: "10.8.xx")를 사용하여 연결하면 모든 것이 정상적으로 표시됩니다. 이는 <img src="/images/test.png" />표준이 있는 간단한 테스트 시나리오 index.html뿐만 아니라 roundcubemail 또는 ownCloud(스타일링 없이는 정말 엉망으로 보임)와 같은 복잡한 시스템에 적용됩니다.

파일 /etc/apache2/sitse-available/default은 다음과 같이 구성됩니다.

<VirtualHost *:80> #apparently, this isn't the complete file
<VirtualHost *:443>

그리고etc/apache2/ports.conf

NameVirtualHost *:80
Listen 80 #same for 443

나는 여기서 무슨 일이 일어나고 있는지 전혀 모른다. 내 .htaccess 구성그렇지 않다특정 IP 범위에 대한 액세스를 제한하려면 .htaccess위 예에서 사용된 /images-subfolder의 경우에도 다음과 같이 구성됩니다.

Satisfy Any
Order Allow,Deny
Allow from all

chmod 777이 설정된 경우에도 TLD 액세스를 통해 이미지가 로드되지 않습니다.

답변1

페이지 자체의 코드(CSS 파일이 로드되는 위치)를 살펴보세요. 내부 주소나 IP를 가리키도록 하드 코딩되어 있을 수 있습니다. CSS 파일을 로드하는 것은 서버가 아니라 브라우저입니다.

답변2

이 문제는 AdBlock으로 인해 발생했습니다. AdBlock은 DDNS 하위 도메인을 Ad-Server로 인식하여 거의 모든 것을 차단합니다. 내 자신의 TLD를 사용하기 때문에 모든 것이 다시 잘 작동합니다. 그렇죠.

관련 정보