配置 Apache+php多端口多站点(转载)

配置httpd.conf

监听多个端口

# Listen: Allows you to bind Apache to specific IP addresses and/or
# ports
, instead of the default. See also the <VirtualHost>
# directive.
#
# Change this to Listen on specific IP addresses as shown below to
# prevent Apache from glomming onto all bound IP addresses.
#
#Listen
12.34.56.78:80
Listen
8081
Listen
8082
Listen
8083
#增加监听端口
等以下内容都设置以后,可以通过 netstat -n -a查看端口是否开启

开启虚拟站点
# Virtual hosts
#Include conf/extra/httpd-vhosts.conf
# 修改为
# Virtual hosts
Include conf/extra/httpd-vhosts.conf

配置PHP模块

加载php模块,php5apache2_2代表使用的是apache2.2或以上版本
LoadModule php5_module "c:/php/php5apache2_2.dll"
PHPIniDir
"C:/php"

配置php文件类型映射
AddType application/x-httpd-php .php


配置conf/extra/httpd-vhosts.conf

<VirtualHost *:8082>
     ServerAdmin webmaster@dummy-host.localhost
     DocumentRoot
"C:/PhpDocRoot/Site1"
     ServerName localhost
     ServerAlias localhost
     ErrorLog
"logs/dummy-host.localhost-error.log"
     CustomLog
"logs/dummy-host.localhost-access.log" common
     <Directory
"C:/PhpDocRoot/Site1">  
         Options Indexes FollowSymLinks
         AllowOverride None
         Order allow
,deny
         Allow from all
     </Directory>
</VirtualHost>

<VirtualHost *:
8083>
     ServerAdmin webmaster@dummy-host2.localhost
     DocumentRoot
"C:/PhpDocRoot/Site2"
     ServerName localhost
     ErrorLog
"logs/dummy-host2.localhost-error.log"
     CustomLog
"logs/dummy-host2.localhost-access.log" common
     <Directory
"C:/PhpDocRoot/Site2">  
         Options Indexes FollowSymLinks
         AllowOverride None
         Order allow
,deny
         Allow from all
     </Directory>
</VirtualHost>
<Directory...>...</Directory> 一定不能少

重新启动apache试一下,如果出错,查看一下logs下面的log文件还有windows的事件查看器记录的错误日志。
原文地址:https://www.cnblogs.com/sandea/p/3289859.html