• 博客园logo
  • 会员
  • 周边
  • 新闻
  • 博问
  • 闪存
  • 众包
  • 赞助商
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
皇图霸业谈笑间
更高、更快、更强
博客园    首页    新随笔    联系   管理    订阅  订阅
无IIS的WEB部署

    在微软.NET平台中,自从Visual Studio 2005 以后的版本编写Web程序的时候,可以在没有IIS的环境中编译和调试,每次调试的时候都会运行起一个 Asp.net Development Server 的服务,这个服务和IIS类似,可以说是IIS的简化版,虽然不如IIS完善和成熟但是用于提供一般的IIS服务已经足够了,作为单机服务还是不错的选 择,这个服务是安装Visual Studio 2005或者Visual Studio 2008的IDE中自带的WebDev.WebServer .exe文件,此文件可以独立出来和WebDev.WebHost.dll一起可以使用Asp.net Development Server 服务。

第一种方式通过命令提示行:

1、开始--运行--输入 cmd 回车

2、在命令提示行中 输入 C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\WebDev.WebServer /port:38438 /path:"C:\Inetpub\wwwroot\myweb" /vpath:"/myweb"

参数说明:
/port: 指定Asp.net Development Server 提供服务的端口号 ,范围在1-65535之间任意一个未使用的端口。
/path:存放Web程序的物理路径。
/vpath:虚拟路径(可选)默认路径就是"/"。

3、打开IE浏览器通过URL:http://localhost:38438/myweb就 可访问到你的网站了~!(怎么样方便吧?)

第二种方式通过WinForm(C#)来启动这个服务

实现方法如下

private void RunServer()

{

    Process P = new Process();

    p.StartInfo.FileName = "cmd.exe";           //设定程序名

    p.StartInfo.Arguments = "/c" + "C:\\WINDOWS\\Microsoft.NET\\Framework\\v2.0.50727\\WebDev.WebServer /port:38438 /path:\"C:\\inetpub\\wwwroot\\myweb\" /vpath:\"/myweb\"";    //设定程序行执行参数
    p.StartInfo.UseShellExecute = false;        //关闭Shell的使用
    p.StartInfo.RedirectStandardInput = true;   //重定向标准输入
    p.StartInfo.RedirectStandardOutput = true;  //重定向标准输出

    p.StartInfo.RedirectStandardError = true;   //重定向错误输出

    p.StartInfo.CreateNoWindow = true;          //设置不显示窗口
    p.Start();  

}

另外再没有安装Visual Studio 2005或者Visual Studio 2008的计算机上怎么才能使用Asp.net Development Server 呢?

1、从安装了安装Visual Studio 2005或者Visual Studio 2008开发环境的计算机上拷贝WebDev.WebServer .exe文件

Vs2005的路径是C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727 \WebDev.WebServer.exe

VS2008的WebDev.WebServer .exe在C:\Program Files\Common Files\Microsoft Shared\DevServer\9.0\WebDev.WebServer .exe

2、只拷贝WebDev.WebServer .exe在没有开发环境的计算机上还不能成功运行Asp.net Development Server,还差一个叫做WebDev.WebHost.dll的文件

Vs2005的环境中这个文件保存在C:\Windows\assembly\GAC_32\WebDev.WebHost \8.0.0.0__b03f5f7f11d50a3a路径下

Vs2008的环境中这个文件保存在C:\Windows\assembly\GAC_32\WebDev.WebHost \9.0.0.0__b03f5f7f11d50a3a路径下

我们先要从有开发环境的计算机中把这个文件拷贝出来,然后再把这个文件拷贝到没有开发环境的计算机的相同的路径下Asp.net Development Server 就可以

要想拷贝WebDev.WebHost.dll必须在命令提示行中用Dos命令进行

步骤如下:

首先:开始--运行--输入 cmd 调出命令提示行

然后:Visual Studio 2005在命令提示行中执行Dos命令 copy C:\Windows\assembly\GAC_32\WebDev.WebHost\8.0.0.0__b03f5f7f11d50a3a\WebDev.WebHost.dll C:\
或者Visual Studio 2008在命令提示行中执行Dos命令 copy C:\Windows\assembly\GAC_32\WebDev.WebHost\9.0.0.0__b03f5f7f11d50a3a\WebDev.WebHost.dll C:\

这样WebDev.WebHost.dll 文件就被复制到了C盘根目录下了。

最后:将WebDev.WebServer .exe和WebDev.WebHost.dll文件拷贝到没有安装开发环境的计算机中,然后建立一个文本文件,将下面的内容复制到文本文件中保存,

md %SystemRoot%\assembly\GAC_32\WebDev.WebHost\8.0.0.0__b03f5f7f11d50a3a
xcopy C:\WebDev.WebHost.dll /y %SystemRoot%\assembly\GAC_32\WebDev.WebHost\8.0.0.0__b03f5f7f11d50a3a

将刚才文本文件的文件名改为copy.bat,然后将copy.bat拷贝到保存WebDev.WebHost.dll的文件夹中,然后运行 copy.bat文件。

OK,现在运行WebDev.WebServer .exe发现服务已经可以正常启动了~!

简单吧??作为轻量级的IIS Asp.net Development Server  可是很不错的哦~!

posted on 2010-06-24 13:14  布颜书  阅读(1062)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2026
浙公网安备 33010602011771号 浙ICP备2021040463号-3