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



...