2

そのため、仮想ホストを介して複数のドメインを維持できる必要がある学校のプロジェクト用に、この HTTP サーバーをセットアップしました。XAMPP を使用してサーバーをセットアップしました。適切に行ったと思っていましたが、おそらくそうではありませんでした。

これを解決するために、ポートをリッスンできないという問題が山ほどありました(apache/conf /の下のhttpd.confで)

    Listen 0.0.0.0:8080
    ServerName localhost:8080

プレフィックス 0.0.0.0 を持たない 80/81/8080/321/任意の組み合わせを使用した場合、ポートをリッスンできないなどのメッセージが表示されました (申し訳ありませんが、構文が少し錆びています)。

最初の仮想ホストを次のようにセットアップしました (apache/conf/extra/httpd-vhosts.conf の下):

NameVirtualHost *:8080

<VirtualHost *:8080>
    DocumentRoot    "H:/xampp2/xampp/htdocs"
    ServerName      localhost:8080

    <Directory "H:/xampp2/xampp/htdocs">
        Option Indexes FollowSymLinks Includes ExecCGI
        AllowOverride All
        Order allow,deny
        Allow from all
    </Directory>
</VirtualHost>

これはすべてうまくいっているように思え、他に何も変更していないと思います。私にとって、これは私のApacheサーバーがサーバーにポート8080を使用することを意味すると思いますか? ただし、XAMPPでApacheを起動すると、非常に明確に表示されます

 Apache started [Port 80]

なぜこれがポート 80 になるのでしょうか?

加えて、localhost:8080 ではドキュメントに移動しませんが、localhost:80 または localhost では移動します。これは、まだポート 80 にあることを意味しているだけだと思います。コンピューターと XAMPP をリセットしてみました。

さらに情報が必要な場合は、お知らせください。次のようなガイドを試してみました: http://ailoo.net/2008/07/set-up-multiple-virtual-hosts-on-xampp-for-windows/

乾杯。

ああ、Windows HOSTS ファイルも編集しました。次のようになります。

# localhost name resolution is handled within DNS itself.
    127.0.0.1       localhost
    ::1             localhost
    127.0.0.1       localhost:8080

編集:新しいエラー...初期化時にこれを取得しても、影響していないようです:

 ERROR: Status Check Failure [3]
 This program must be run from your XAMPP root directory.

私が知る限り、ルートディレクトリから実行されています。

4

2 に答える 2

8

わかりました、私はこの分野でも進んでいません。しかし、XAMPPを何度も試し、いくつかの異なるガイドに従った後、私は自分の仕事を始めました。

ドライバーの下のホストは少し奇妙に見えます。私は私のことを次のように宣言しました:

 127.0.0.1:8080    test.localhost.com
 127.0.0.1:8080    test2.localhost.com

Xamppをバックアップしてから、Cへのクリーンインストールを抽出します。-ステータスチェックの失敗が悪いニュースのように聞こえるからです。

!xamppディレクトリからsetup_xampp.batを実行し、apacheサービスをインストールすることを忘れないでください!

次に、httpd.confの下に次を追加します。

ServerRoot C:\xampp\apache
Listen 7070
Listen 8080
Listen 9090

Apacheは最初はそれを好まないかもしれませんが、まあ。

ServerRootは、リッスンスポットの上ですでに宣言されている可能性があるため、再確認してください。

その後、C:\ xampp \ apache \ conf\extraに移動します。

httpd-vhosts.confを編集します。

[名前ベースの仮想ホスティング]セクションで、次を追加します。

NameVirtualHost *:7070
NameVirtualHost *:8080
NameVirtualHost *:9090

その下に仮想ホストの例がいくつかあります。追加:

<VirtualHost *:7070>
    DocumentRoot    "C:/xampp/www/YOURWEBSITEDIR1"
    ServerName      test.localhost.com
    <Directory "C://xampp/www/YOURWEBSITEDIR1">
        Allow from all
    </Directory>
</VirtualHost>

<VirtualHost *:9090>
    DocumentRoot    "C:/xampp/www/YOURWEBSITEDIR2"
    ServerName      test2.localhost.com
    <Directory "C://xampp/www/YOURWEBSITEDIR2">
        Allow from all
    </Directory>
</VirtualHost>

Directoryタグの二重スラッシュではありません。次に、これらの各ディレクトリの下にindex.htmlがあることを確認します。apacheを再起動します(停止、開始)。

test.localhost.comのURLに移動できません。おそらく、HOSTsの構成がひどく間違っているためです。127.0.0.1:7070、127.0.0.1:9090に接続して、そこからWebページにアクセスできますが。

また、127.0.0.1:8080は、ローカルホストが接続に使用したxamppウェルカムパネルに接続します。

これがお役に立てば幸いです。

于 2012-10-25T00:06:44.337 に答える
0

使用するポートに関係なく、「ポート 80 でリッスンする」ということは XAMPP にハードコーディングされていると確信しています。したがって、コードは正常に動作するはずです。
私の .conf ファイルでは、Listen 0.0.0.0:8080
Cheers ではなく、"listen 80" とだけ表示されています。

于 2013-08-12T08:25:13.503 に答える