簡體   English   中英

Apache配置-我在這里缺少什么?

[英]apache configuration - what am I missing here?

我有一台Windows XP計算機,在C:\\ Program Files \\ Apache Software Foundation \\ Apache2.2下安裝了apache

我在httpd.conf中將文檔根目錄設置為DocumentRoot“ C:/ projects”,我的項目在c:\\ projects中是proj1和proj2

<VirtualHost *:80>
 DocumentRoot "C:/projects/proj1"

 ServerName  proj1

</VirtualHost>

<VirtualHost *:80>

 DocumentRoot "C:/projects/proj2"

 ServerName  proj2

</VirtualHost>

proj1和proj2都有index.php文件。 我加了

127.0.0.1 proj1

127.0.0.1 proj2

在主機文件中。

仍然,當我輸入http:// proj1時 ,我只看到文件列表,虛擬目錄不起作用。 我想念什么?

除了重新啟動/重新加載Apache外,還需要檢查其他幾件事:

首先,以下是有效的虛擬主機配置示例:

<VirtualHost *:80>
    ServerName proj1
    DocumentRoot "c:/www/proj1"
    <Directory "c:/www/proj1" >
        AllowOverride All
        Order allow,deny
        Allow from all
    </Directory>
</VirtualHost>

<VirtualHost *:80>
    ServerName proj2
    DocumentRoot "c:/www/proj2"
    <Directory "c:/www/proj2" >
        AllowOverride All
        Order allow,deny
        Allow from all
    </Directory>
</VirtualHost>

請注意proj1proj2都具有自己的VirtualHost指令。

其次,確保Apache加載了vhosts聲明。 為了使我的工作正常,我不得不在httpd.conf取消注釋此行:

# Virtual hosts
Include conf/extra/httpd-vhosts.conf

沒有看到您所有的配置文件,信息不足,但是需要檢查以下幾件事:

  • 啟動時,apache錯誤日志中是否有任何提示?
  • 確保配置文件中某處有NameVirtualHost *:80,並且該語句在虛擬主機之前已加載。
  • 如果您可以看到proj1目錄的目錄列表,則表明虛擬主機正在運行,您可以調整目錄權限和屬性(允許使用索引文件,目錄列表等)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM