私の目標は、ローカル Web サーバー上で開発中の Web サイトにユーザーがアクセスできるようにすることです。
問題は、ユーザーが私の LAN にアクセスして Web サイトのホームページにアクセスすると、期待どおりに機能してページが返されるものの、Web ルートの下のディレクトリまたはファイルにアクセスしようとすると、「要求された URL が見つかりません」、「サーバー名の IP アドレスが見つかりません」という結果になることです。
言うまでもなく、LAN 上で external_IP_address/server_root 経由でアクセスする場合、すべて完璧に動作しますが、これより下へのアクセスは失敗します。
私は ubuntu 18.04 と apache2 を使用しています。ローカル サーバーには固定の内部 (192) アドレスがあり、ローカル DNS サーバーはありません。
さらに詳しく説明します。このサイトは WordPress サイトです。ユーザーは私の LAN の外部にいて、外向きの固定 IP 経由でアクセスし、ポート 80 で私のサーバーに転送されます。この方法では、WordPress サイトのホームページにユーザーがアクセスすることはできますが、それ以上先に進むことはできません。
ユーザーは externalIP/site/index.php に正常にアクセスできますが、ローカル サーバー名を参照する後続のリンクをクリックすると失敗します。問題は、ローカル サーバー名を解決しようとしているが、それができないことにあるようです。したがって、私の考えが正しければ、この状況の回避策を探しています。
答え1
リンクに絶対 URL を使用しているようです。相対 URL を作成できます (サーバー部分をスキップします)。<a href="/some/other/part.html">