この設定プロセスに従えば、あなたの旅は間違いなくスムーズで安全になります。
昨日、小さな PHP プログラムを作成し、ローカルで実行してテストしようとしましたが、職場のコンピューターにインストール環境がなかったので、wamp をダウンロードしたところ、Apache、Mysql、PHP を含め、すべてがスムーズに進みました。 wamp サービスを起動し、ブラウザに「http://localhost」と入力すると正常にアクセスされ、wamp のホームページが表示されます。したがって、独自の CrashServer Web サイトを Apache に構成し、仮想ドメイン名を介してローカルにアクセスしてテストしたいと考えています。その結果、今日 Google で調べた結果、Ren と Du の両方が原因であることがわかりました。接続されています。
1. まず、Apache の設定ファイルは httpd.conf と httpd-vhosts.conf です。まず、wamp のインストール後の httpd.conf のデフォルト設定を見てみましょう。
<span>DocumentRoot "d:/wamp/www/" </span><span><</span><span>Directory </span><span>/></span><span> AllowOverride none Require all denied </span><span></</span><span>Directory</span><span>></span><span><</span><span>Directory </span><span>"d:/wamp/www/"</span><span>></span><span> Options Indexes FollowSymLinks AllowOverride all Require local </span><span></</span><span>Directory</span><span>><br></span>
# 仮想ホスト
#Include conf/extra/httpd-vhosts.conf
<span> </span>
仮想ドメイン名を通じて Web サイトにアクセスしたい場合は、httpd-vhosts.conf を設定する必要があります。次に、httpd-vhosts.conf を起動する必要があります。デフォルトでは閉じられているため、構成ファイル内の #Include conf/extra/httpd-vhosts.conf の前にある # を削除します。したがって、httpd-vhosts.conf が有効になっているので、httpd-vhosts.conf ファイルを編集します。
2. httpd-vhosts.conf ファイルの場所は、Apache ディレクトリの conf/extra にあります。実際には、上記の Include conf/extra/httpd-vhosts.conf でその場所がわかります。
このファイルに、上記の CrashServer Web サイトの構成を追加します。
<span>NameVirtualHost *:80</span><span><</span><span>VirtualHost </span><span>*:80</span><span>></span><span> DocumentRoot "D:/wamp/www/CrashServer" ServerName crash.com </span><span></</span><span>VirtualHost</span><span>></span>
まず第一に、私の CrashServer は、wamp のデフォルトの Web サイト ディレクトリである wamp/www の下に配置されます。次に、それをローカルでテストしたいと思います。この時はcrash.comを使ってCrashServerにアクセスできるので上記のような設定になります。
ここで、crash.com を通じてローカル サイトにアクセスするには、hosts ファイルを変更して 127.0.0.1 crash.com を追加する必要があります。
この時点で設定は完了したので、Apacheを再起動し、crash.comと入力してアクセスしたところ、正常にアクセスできました。ただし、localhostでアクセスすると、本来はwampのホームページが表示されるのですが、CrashServerが表示されるようになるので、hostsに127.0.0.1のlocalhostを追加し、httpd-vhosts.confにlocalhostのサイト構成を追加する必要があります。次のようになります:
<span>NameVirtualHost *:80 </span><span><</span><span>VirtualHost </span><span>*:80</span><span>></span><span> DocumentRoot "D:/wamp/www" ServerName localhost </span><span></</span><span>VirtualHost</span><span>></span><span><</span><span>VirtualHost </span><span>*:80</span><span>></span><span> DocumentRoot "D:/wamp/www/CrashServer" ServerName crash.com </span><span></</span><span>VirtualHost</span><span>></span>
OK、これで基本的にウェブサイトの設定は完了です。非常にシンプルに見えます。しかし、これは私には当てはまりませんでしたが、昨日次の問題に遭遇しました。
まず第一に、私の CrashServer は最初は wamp/www の下ではなく、E:360Downloads の下に配置されていたため、次の構成になりました:
<span><</span><span>VirtualHost </span><span>*:80</span><span>></span><span> DocumentRoot "E:/360Downloads/CrashServer" ServerName crash.com </span><span></</span><span>VirtualHost</span><span>></span>
そうです、パスは正しく、仮想です。ドメイン名は正しいのですが、アクセスすると 403 Forbidden、no Permission というメッセージが表示されます。そこで Google は、CrashServer ディレクトリにアクセス許可を追加する必要があることに気づき、次のように設定を変更しました:
<span><</span><span>VirtualHost </span><span>*:80</span><span>></span><span> DocumentRoot "E:/360Downloads/CrashServer" ServerName crash.com </span><span><</span><span>Directory </span><span>E:/360Downloads/CrashServer</span><span>></span><span> Order Allow,Deny Allow from All Require all granted </span><span></</span><span>Directory</span><span>></span><span></</span><span>VirtualHost</span><span>></span>
Apache を再起動すると、アクセスが正常になります。まず、新しいディレクトリは httpd.conf または httpd-vhosts.conf に追加する方が、設定内容が明確であり、プロジェクトのディレクトリの権限がプロジェクトの設定に従うのが良いと思います。上記の新しく追加されたディレクトリでは、360Downloads の下の CrashServer ディレクトリにアクセス許可を追加し、アクセスを許可したため、403 Forbidden のプロンプトが表示されなくなりました。
この問題は今はとてもシンプルで簡単に書けますが、問題が発生すると非常に不安で憂鬱になります。 wamp/www 以外のプロジェクトの場合、プロジェクト ディレクトリにアクセス許可を与える必要があります。 注:
<span>Order Allow,Deny Allow from All Require all granted</span>
これら 3 つの項目は、外部コンピューターがサーバー サイトにアクセスできるように設定されています。
3. 今日問題を解決した後、同じLAN内の他のデバイスからサイトにアクセスしようと思い、携帯電話を使用してブラウザにコンピューターのIPを入力しましたが、アクセスできませんでした。
<span><</span><span>Directory </span><span>"d:/wamp/www/"</span><span>></span><span> Options Indexes FollowSymLinks AllowOverride all Require local </span><span></</span><span>Directory</span><span>></span>
このうち、Require local は Google にはリストされていませんが、名前から判断すると、ローカル アクセスのみを許可するので、これを変更する必要があることがわかります。 [すべて許可する必要がある] に変更され、要求されたすべてのアクセスが許可され、携帯電話はそれにアクセスできるようになります。
参考、http://roteg.iteye.com/blog/1465380、アクセス検証設定の説明はこちらです。
ここに、外国人によって書かれた非常に優れた設定ブログ投稿があります。 https://www.kristengrote.com/blog/articles/how-to-set-up-virtual-hosts-using-wamp# wamp-step-7 ですが、唯一のことは、彼のステップ 7 で、プロジェクト ディレクトリにアクセス許可を追加しました:
<span><</span><span>Directory </span><span>C:/Users/Kristen/Documents/Projects</span><span>></span><span> Order Deny,Allow Allow from all </span><span></</span><span>Directory</span><span>></span>
しかし、「すべての許可」が欠落しており、最終的には 403 Forbidden になりました。とても落ち込んでいます。
この設定は次の wamp 環境で実行されます:
この時点で、PHP サイトは Apache で設定され、すべてが完了します。
以上、PHP開発のためのApacheサーバーの設定に関する備忘録を紹介しましたが、すべてを徹底的に理解しようとしないと、問題に遭遇したときに間違いなく盲目になります。 PHP チュートリアルに興味のある友人に。