Apache2 - 画像と CSS は TLD 経由ではなく、ローカル ネットワーク内でのみ使用可能です

Apache2 - 画像と CSS は TLD 経由ではなく、ローカル ネットワーク内でのみ使用可能です

私は、外部からアクセスできるようにダイナミック DNS サービスを使用するローカル マシンで Apache/2.2.22 (Debian) を実行しています。一般的に、これはうまく機能します。

ただし、DNS サービスによって提供される TLD (例: "subdomain.dns.com") 経由で接続した場合、サーバーは画像と 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 サブフォルダーの場合は次のように構成します。

Satisfy Any
Order Allow,Deny
Allow from all

chmod 777 が設定されていても、画像は TLD アクセス経由では読み込まれません。

答え1

ページ自体のコード (CSS ファイルを読み込む部分) を確認してください。内部アドレスまたは IP を指すようにハードコードされている可能性があります。CSS ファイルを読み込むのはサーバーではなく、ブラウザです。

答え2

この問題は AdBlock が原因でした。AdBlock は DDNS サブドメインを広告サーバーとして認識したため、ほとんどすべてがブロックされました。私は独自の TLD を使用しているため、すべてが正常に動作するようになりました。

関連情報