web-dev-qa-db-ja.com

VM CentOSを実行していますが、pingはできますが、Webサーバーにアクセスできません

私は初めてCentOSサーバーをセットアップしようとしました(Linuxサーバーをセットアップしたことはありません)。インストールはうまくいき、LAMPP(およびx86に必要な依存関係)をインストールし、lamppセキュリティツールを使用して、http://192.168.0.112:8888/ elinksを使用します。

これまでのところとても良いです...しかし、ネットワーク内の他のコンピューター(VMのホストを含​​む)からサーバーにアクセスしたいと思っていました。しかし、私はそれを動作させることができず、404を取得し続けることはできません...

このネットワーク(ポート80)で別のウェブサーバーを実行しているため、Listen 80からListen 8888 httpd.confで、ルーターの8888をCentOSインストールからIPに転送しました(静的:192.168.0.112、ifconfigによると)。

Ping 192.168.0.112 戻り値:

Ping statistics for 192.168.0.112:
    Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
    Minimum = 0ms, Maximum = 0ms, Average = 0ms

サーバーの詳細:

  • CentOS 6.5最小、.isoからインストール
  • LAMPP 1.8.1(apachefriends.orgのwgetを使用)

ホストの詳細:

  • Windows 8.1 x64
  • VirtualBoxはブリッジネットワークアダプターを使用しています(オランダ語から翻訳:Netwerkブリッジアダプター)

この問題を修正する方法に関するアイデアはありますか?私は自分がフロントエンドの開発者なので、ネットワーキングとサーバーに比較的慣れていませんが、本当にバックエンドのことを知りたいです。

今は本当に遅くなってきたので寝ます。うまくいけば、午前中にネットワーキング/ CentOSがどのように機能するかについていくつかの良い洞察を得ることができます!

前もって感謝します。

9
Cas Cornelissen

おそらくApache内のvirtualhost構成です。そこには「[何かから]を許可する」というセクションがあります。 「すべて許可」と表示されていることを確認してください。

これは私のものです。

<Directory /var/www/>
    Options FollowSymLinks
    AllowOverride AuthConfig FileInfo Limit
    Order allow,deny
    allow from all
</Directory>

私の個人的な見解では、xamppをまったく使用しません。あなたは実際に物事をより困難にしています。 CentOSのネイティブパッケージを使用するだけです。これは良いチュートリアルです(グーグル検索から)

https://www.digitalocean.com/community/articles/how-to-install-linux-Apache-mysql-php-lamp-stack-on-centos-6

または、Ubuntu Serverをインストールできます。インストール段階で、LAMPをインストールするためにチェックできるオプションがあります。すべてのパッケージをダウンロードしてインストールします。

幸運を。

0
Linuxx

私もこの問題を抱えていました。あなたの説明から、私はあなたと同じセットアップを実行していました。 firewalldをインストールして実行していたため、次のコマンドを使用する必要があることがわかりました。

Sudo firewall-cmd --permanent --zone=public --add-service=http
Sudo firewall-cmd --permanent --zone=public --add-service=https
Sudo firewall-cmd --reload

これにより、仮想マシンで実行されているApacheサーバーにvmの外部からアクセスできるようになりました。

14
George

次のコマンドを実行します。

iptables -I INPUT -i eth1 -p tcp -m tcp --dport 80 -j ACCEPT

変更を永続化するには、/ etc/sysconfig /に移動し、次の行をiptablesに追加します。

-A INPUT -i eth1 -p tcp -m tcp --dport 80 -j ACCEPT

次に、ウェブサーバーを再起動します。

service httpd restart

これで、VirtualBoxからアクセスできます。

3
Ricardo Pestana

本当に必要なときに192.168.0.112にルーターのトラフィックを192.168.0.112:8888に転送したようです。 CentOSマシンにpingを実行できるコンピューターとできないコンピューター、ルーターがポートを転送するように構成されている方法、/etc/httpd/conf/httpd.confの内容について知っておくと役に立ちます。

また、このWebサーバーにアクセスできるようにしたい別のネットワークにルーティングしていて、両方のWebサーバーの外部IPが同じでない限り、このネットワークに別のWebサーバーがあることは問題になりません。

この場合、「外部」IPは10.10.10.10で、このルーターの内部IPは192.168.0.1です。前述のとおり、CentOSウェブサーバーが192.168.0.112にあり、他のサーバーが192.168.0.110にあり、ポート80でウェブサーバーをホストしているとします。

192.168.0.11010.10.10.*上のデバイスにHTTPトラフィックを提供できるようにしたいため、10.10.10.10:80192.168.0.110に転送しました。ただし、これは、8888からポート192.168.0.112でWebトラフィックを提供する必要があるという意味ではありません。 192.168.0.112経由でルーティングする必要があるデバイスから192.168.0.1にアクセスする場合にのみ、80以外のポートが必要になります。したがって、この場合は、192.168.0.112をポート80で提供し、トラフィックを10.10.10.10:8888から192.168.0.112:80に転送します。

最後に、ブラウザで404メッセージを受信して​​いるという事実は、何らかのWebサーバーにアクセスしていることを意味します。

404またはNot Foundエラーメッセージは、クライアントがサーバーと通信できたがサーバーが要求されたものを見つけられなかったことを示すHTTP標準応答コードです。 (Wikipedia)

0
ndt