Zend Server CE5.1.0をWindows7 Ultimate 64ビットのデフォルトの場所にインストールしました。つまり、htdocsへのパスはC:\Program Files (x86)\Zend\Apache2\htdocs
です。 EclipseでSVNからプロジェクトをチェックアウトするたびに入力したいものではありません。
DocumentRootを別のフォルダー、つまりD:\www
に設定したいと思います。
私がやったこと
私はconf/httpd.conf
を編集しましたが、重要な行は次のとおりです。
DocumentRoot "D:\www"
<Directory "D:\www">
Options Indexes FollowSymLinks
AllowOverride All
Order allow,deny
Allow from all
</Directory>
Include conf/extra/httpd-vhosts.conf
conf/extra/httpd-vhosts.conf
を編集して、仮想ホストを追加しました。
NameVirtualHost *:80
<VirtualHost *:80>
DocumentRoot D:\www
ServerName localhost
ServerAlias localhost
SetEnv APPLICATION_ENV development
SetEnv APPLICATION_DOMAIN localhost
</VirtualHost>
<VirtualHost *:80>
DocumentRoot D:\www\UmbraCMS
ServerName umbracms.local
ServerAlias umbracms.local
SetEnv APPLICATION_ENV development
SetEnv APPLICATION_DOMAIN umbracms.local
</VirtualHost>
C:\Windows\System32\drivers\etc\hosts
を編集して、次の行を追加しました。
127.0.0.1 umbracms.local
また、PHPプロジェクトをD:\www\UmbraCMS
に追加し、Apacheを再起動しました。実際、念のため、コンピューターも再起動しました。
何が起こるはずです
ブラウザのアドレスバーにhttp://umbracms.local/
と入力した後、明らかに私のPHPプロジェクトの起動を確認したいと思います。
実際に何が起こっているのか
http://umbracms.local/
と入力するかhttp://localhost/
と入力するかに関係なく、DocumentRootが変更されておらず、名前ベースの仮想ホスティングも機能していないかのように、C:\Program Files (x86)\Zend\Apache2\htdocs\index.html
にあるテストzendページに移動します。
興味深いことに、別のプロジェクトをC:\Program Files (x86)\Zend\Apache2\htdocs\bugraid\
に入れてから、ブラウザーでhttp://localhost/bugraid
と入力すると、プロジェクトは実際に開かれるか、少なくともプロジェクトの.htaccess
ファイルを完全に無視するために試行されました。
追加の考慮事項
Zend ServerのApacheバージョンは2.2.16、PHPバージョンは5.3.0です
MySQL CE 5.5.13を個別にインストールしましたが、コマンドラインからもMySQLWorkbench経由でも機能します。
XAMPPをインストールしましたが、そのコンポーネントが起動していません。 Apache2.2.17とMySQL5.5.1が独自にインストールされています。 PHPバージョンは5.3.5です(私は思います)。
質問
以前に同じような状況がありましたか? Zend ServerのApacheに私のPHPプロジェクトのドキュメントルートとしてD:\www
を使用させるには、他に何を処理する必要がありますか?
Vistaは、ユーザーが編集する管理者所有のファイルを悪用して、基本的にユーザーだけが見ることができるコピーを作成しませんか?これは「ファイルシステムリダイレクト」だと思います。runas+ administratorを試してみると、httpd.confが実際には変更されていないことがわかります。