AppServ2.5.9本机设置虚拟主机-很好很实用

来源:互联网 发布:中国5g网络 编辑:程序博客网 时间:2024/06/01 15:12
AppServ2.5.9本机设置虚拟主机
   
  为了测试dedecms和php168以及PHPCMS这两种cms,所以在本机分别架设两个虚拟主机。    
  
  1: 安装好AppServ2.5.9软件,官网是:http://www.appservnetwork.com/ ,2.59下载地址是:http://nchc.dl.sourceforge.net/sourceforge/appserv/appserv-win32-2.5.9.exe 是英文软件,但是安装时可以选择gbk-gb2312的编码。 
  2: 修改本机的hosts文件,如下:  
  示例:
  127.0.0.1            localhost
  127.0.0.1       www.dede.com
  127.0.0.1       www.phpcms.com   
  
  3: 打开appserv的安装目录,找到httpd.conf文件,分别去掉下面两行文字前面的#号。  
  #LoadModule vhost_alias_module modules/mod_vhost_alias.so   
  去掉#意思是启用apache的虚拟主机功能。  
  
  #Include conf/extra/httpd-vhosts.conf  
  去掉这一行的#意思是从conf/extra/httpd-vhosts.conf这个文件导入虚拟主机配置。
  
  4: 打开extra目录内的httpd-vhosts.conf文件,什么都不管,直接在文件底部加入自己要加的虚拟主机的信息。如下面所示。   
   分别是给出一个管理员邮箱、指出此网站的根目录、域名、和错误日志存放位置。注意目录间隔最好用/而不是\ 。    
                           
  
         ServerAdmin jsw7001@hotmail.com
         DocumentRoot E:/AppServ259/www/dede
         ServerName www.dede.com
         ErrorLog E:/AppServ259/www/dede/error.log
         CustomLog logs/dummy-host2.appservnetwork.com-access_log common

 


         ServerAdmin jsw7001@hotmail.com
         DocumentRoot E:/AppServ259/www/phpcms
         ServerName www.phpcms.com
         ErrorLog E:/AppServ259/www/dede/error.log
         CustomLog logs/dummy-host2.appservnetwork.com-access_log common
        
  
  *以上路径中的斜线左斜右斜都可以。    
   
  5: 将appserv的apache服务重启,就可以了,可以在各网站的根目录下放一个index.html文件,如果能看到,说明就对了。  

 

其他方法:

程序名称:AppServ虚拟主机管理工具

程序作者:Choy Lv 2007.08.18

程序用途:快速为 AppServ 创建虚拟主机并设定个性域名,摆脱 localhost 束缚,让每个项目都能使用独立域名进行测试。
     当然,如果您的服务器也是由 AppServ 创建的,也可以用该工具快速设置虚拟主机。

程序说明:该程序将修改 c:/windows/system32/drivers/etc/hosts 文件,病毒防火墙可能会警告,烦请放行。
     该程序还将修改您的 apache 的 httpd.conf文件。
     该程序还将创建一个 vhosts 文件来存储您的虚拟主机配置。

程序使用:在任意目录下执行该 bat 批处理文件。根据提示操作!

测试环境:AppServ 安装目录 d:/appserv ;
     Apache安装目录 d:/appserv/apache2.2;
     系统文件夹在 C:/windows 。
     您可以根据您的实际情况,修改bat文件里相应的路径。

程序下载:appserv虚拟主机管理工具.rar (1.53 KB ,下载:80次)

程序源码:
=========源码开始===============


@echo off
title Appserv 虚拟主机管理工具 Power by Choy lv
color 0a

set hosts=%systemroot%\system32\drivers\etc\hosts

:起点
echo ## 欢迎使用 Appserv 虚拟主机管理工具
echo ## 作者:Choy lv 2007.08.18 http://www.supzz.com
echo ## 当前时间:%date%  %time%
echo =========================================

:判断
set httpd=D:/AppServ/apache2.2/conf/httpd.conf

find “Include D:/AppServ/vhosts/” %httpd% > tmp.txt
if NOT %errorlevel%==0 echo NameVirtualHost * >> %httpd% & echo Include D:/AppServ/vhosts/[^^.#]* >> %httpd%
del tmp.txt /q

if NOT exist D:\AppServ\vhosts md d:\AppServ\vhosts

echo.
echo 请输入您要执行的操作:
echo  1、创建虚拟主机
echo  2、删除虚拟主机
echo  3、编辑hosts
echo  0、退出
echo. 

:选择
set /p choice=请选择:
if not “%Choice%”==“” set Choice=%Choice:~0,1%
if /i “%choice%”==“0″ exit
if /i “%choice%”==“exit” exit
if /i “%choice%”==“1″ goto 新站点
if /i “%choice%”==“2″ goto 删除站点
if /i “%choice%”==“3″ notepad %hosts% & echo. &echo. & goto 起点
echo 输入错误,请重新输入
goto 选择

:新站点
echo.
set /p hostname=虚拟主机站点名(便于您的管理):
if “%hostname%”==“/?” goto 新站点
if “%hostname%”==“” goto 新站点
if “%hostname%”==“exit” exit

set conf=D:\AppServ\vhosts\%hostname%.conf
if exist %conf% echo 已经存在名为 %hostname% 的站点了!& echo.  & goto 新站点
echo ^< VirtualHost *:80^> > %conf%

:绑定域名
set /p domain=请为站点%hostname%绑定一个主域名,(如:test.com):
if “%domain%”==“/?” goto 绑定域名
if “%domain%”==“” goto 绑定域名

echo ServerName %domain% >>%conf%
find “127.0.0.1  %domain%” %hosts% > tmp.txt
if %errorlevel%==0 echo 域名“%domain%”已存在! & goto 绑定域名
echo. >> %hosts%
echo 127.0.0.1  %domain% #站点:%hostname% >>%hosts%
goto 其他域名

:其他域名
set /p newdomain=绑定其他域名(输入 N 结束输入):
if “%newdomain%”==“/?” goto 其他域名
if “%newdomain%”==“” goto 其他域名
if “%newdomain%”==“N” goto 指定目录
if “%newdomain%”==“n” goto 指定目录
echo ServerAlias %newdomain% >>%conf%
find “127.0.0.1  %newdomain%” %hosts% > tmp.txt
if %errorlevel%==0 echo 域名“%newdomain%”已存在! & goto 其他域名
echo 127.0.0.1  %newdomain% #站点:%hostname% >>%hosts%
goto 其他域名

:指定目录
set /p sitepath=站点文件夹名称(相对 D:\appserv\www\ 文件夹):
if “%sitepath%”==“/?” goto 指定目录
if “%sitepath%”==“” goto 指定目录
set sitepath=d:\AppServ\www\%sitepath%
if exist %sitepath% echo 已经存在 %sitepath% 的文件夹了! & goto 目录存在
goto 创建目录

:目录存在
set /p newdomain=使用这个存在的目录吗?(Y/N):
if “%newdomain%”==“/?” goto 目录存在
if “%newdomain%”==“” goto 目录存在
if “%newdomain%”==“Y” goto 保存目录
if “%newdomain%”==“y” goto 保存目录
goto 指定目录

:创建目录
md %sitepath%
echo 站点 %hostname% 目录成功创建,路径是:%sitepath%

:保存目录
echo DocumentRoot %sitepath% >> %conf%
echo ^VirtualHost^> >> %conf%

echo.
net stop apache2.2
net start apache2.2

del tmp.txt
echo ——————站点 %hostname% 创建成功————–
start http://%domain%
echo.
goto 起点

:删除站点
echo.
set /p sitename=请输入您要删除的站点名称(键入 N 取消操作):

if “%sitename%”==“/?” goto 删除站点
if “%sitename%”==“” goto 删除站点
if “%sitename%”==“N” goto 起点
if “%sitename%”==“n” goto 起点

if NOT exist D:\AppServ\vhosts\%sitename%.conf echo 不存在名为%sitename%的站点!& echo.  & goto 删除站点

del D:\AppServ\vhosts\%sitename%.conf /q

echo.
echo 站点配置文件删除成功!
echo.
net stop apache2.2
net start apache2.2
echo.
echo hosts文件中的对应的域名指向需要您手功删除

:hosts处理选择
echo.
set /p choice=是否立即编辑hosts(Y/N):
if not “%Choice%”==“” set Choice=%Choice:~0,1%
if /i “%choice%”==“exit” exit
if /i “%choice%”==“y” goto 编辑hosts
if /i “%choice%”==“Y” goto 编辑hosts
if /i “%choice%”==“n” goto 删除成功提示
if /i “%choice%”==“N” goto 删除成功提示
echo 输入错误,请重新输入
goto hosts处理选择

:编辑hosts
notepad %hosts%

:删除成功提示
echo.
echo –删除站点配置成功
echo –请自行处理相应的站点文件夹

echo.
pause
goto 起点

=========代码结束===============

程序下载:appserv虚拟主机管理工具.rar (1.53 KB ,下载:80次)

============修改说明07.11.06===============
httpd.conf 需要加入 NameVirtualHost * >> %httpd% &  才能使appserv基于主机名创建虎拟主机。