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



...