php - 在XAMPP上,php如何創建虛擬主機

  显示原文与译文双语对照的内容
132 0

我確信這個問題被問了很多次,但我沒有遇到問題。我在使用 XAMPP,我在這裡配置 Zend 框架。

XAMPP正在以收費的埠 8081 運行,因為有些 Windows 進程佔用了 80,我需要使用虛擬主機來配置以下代碼C:/xampp/apache/config/extra/httpd-vhosts.config( 或者或C:/xampp/apache/conf/extra/httpd-vhosts.conf在較新版本中) 。

<VirtualHost *:80>
ServerName comm-app.local
DocumentRoot"C:/xampp/htdocs/CommunicationApp/public"
SetEnv APPLICATION_ENV"development"
 <Directory"C:/xampp/htdocs/CommunicationApp/public"
 DirectoryIndex index.php
 AllowOverride All
 Order allow,deny
 Allow from all
 </Directory>
</VirtualHost> 

同時使用 127.0.0.1 comm-app.local 更新主機文件,並嘗試啟動 apache,但它顯示錯誤。

15:03:01 [Apache] Error: Apache shutdown unexpectedly.
15:03:01 [Apache] This may be due to a blocked port, missing dependencies, 
15:03:01 [Apache] improper privileges, a crash, or a shutdown by another method.
15:03:01 [Apache] Press the Logs button to view error logs and check
15:03:01 [Apache] the Windows Event Viewer for more clues
15:03:01 [Apache] If you need more help, copy and post this
15:03:01 [Apache] entire log window on the forums
时间:

129 0

我看到兩個錯誤:

<VirtualHost *:80> -> Fix to :8081, your POrt the server runs on
 ServerName comm-app.local
 DocumentRoot"C:/xampp/htdocs/CommunicationApp/public"
 SetEnv APPLICATION_ENV"development"
 <Directory"C:/xampp/htdocs/CommunicationApp/public" -> This is probably why it crashes, missing> 
 DirectoryIndex index.php
 AllowOverride All
 Order allow,deny
 Allow from all
 </Directory>
 -> MIssing close container: </VirtualHost> 

固定版本:

<VirtualHost *:8081>
 ServerName comm-app.local
 DocumentRoot"C:/xampp/htdocs/CommunicationApp/public"
 SetEnv APPLICATION_ENV"development"
 <Directory"C:/xampp/htdocs/CommunicationApp/public">
 DirectoryIndex index.php
 AllowOverride All
 Order allow,deny
 Allow from all
 </Directory>
</VirtualHost>

有一件事情需要提及:

你可以隨時嘗試運行命令:

service apache2 configtest

這會告訴你什麼時候配置錯誤,甚至可以告訴你問題在哪裡。

此外,它有助於避免實時系統中的不可用:

service apache2 restart

將關閉,然後無法啟動,這個configtest你預先知道,但是本身仍舊在舊配置中運行。: )

原作者:
112 5

步驟 1 ) C:WINDOWSsystem32driversetc 打開"主機"文件:

127.0.0.1 localhost
127.0.0.1 test.com
127.0.0.1 example.com

步驟 2 ) xamppapacheconfextrahttpd-vhosts.conf

<VirtualHost *:80>
 DocumentRoot C:/xampp/htdocs/test/
 ServerName www.test.com
</VirtualHost>
<VirtualHost *:80>
 DocumentRoot C:/xampp/htdocs/example/
 ServerName www.example.com
</VirtualHost>

在第1 步的末尾添加 C:xamppapacheconfhttpd.conf. 滾動到補充配置部分,然後找到下面的部分,從第二行的開頭刪除 #,這樣就可以看到這個部分:

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

步驟 4 ) 重啟 XAMPP,現在在你的瀏覽器中運行:

www.example.com or www.test.com
69 2

把這些代碼寫在 C:xamppapacheconfextrahttpd-vhosts.conf 文件的結尾

DocumentRoot"D:/xampp/htdocs/foldername"
ServerName www.siteurl.com
ServerAlias www.siteurl.com
ErrorLog"logs/dummy-host.example.com-error.log"
CustomLog"logs/dummy-host.example.com-access.log" common

在虛擬主機標記之間。

並編輯文件 System32/Drivers/etc/hosts 作為管理員使用記事本

添加文件底部

127.0.0.1 www.siteurl.com
...