1. WIN7安装IIS: 控制面板----程序和功能-----打开或关闭windows功能,如图
展开Internet信息服务,按照下图方式进行选择,然后单击“确定”,等待几分钟就安装好了
2. 注册IIS
因为我们是先安装的VS,后安装的IIS,所以需要将IIS注册进VS中(具体原因可以去网上查,或者咱们以后再说,但我还是希望大家自己寻找答案),具体方法如下:
在运行中输入“cmd”,回车进入Dos界面
输入下列命令:cd C:WindowsMicrosoft.NETFrameworkv4.0.30319,敲回车,如图
上面命令的意思是进入到C:WindowsMicrosoft.NETFrameworkv4.0.30319这个目录下,然后运行这个目下名称为aspnet_regiis.exe的程序,代码如下图所示
然后冲洗IIS,重启IIS的命令为iisreset(停止IIS的命令为iisreset /stop,启动IIS的命令为iisreset /start),至此注册IIS成功
注:之所以使用aspnet_regiis.exe –i,而不是直接运行aspnet_regiis.exe,是因为两者的作用不同,aspnet_regiis.exe 后面除了可以跟-i之外,还可以跟其他参数,可以通过如下命令来查看asp.net_regiis.exe后面都可以跟哪些参数
3将程序发布到IIS上
新建一个简单的Web程序 实现最简单的功能,在页面添加一个按钮,单击按钮输出“hello world”
<body> <form id="form1" runat="server"> <div> <asp:Button ID="Button1" runat="server" Text="Button" onclick="Button1_Click" /> </div> </form> </body>
后台代码为
protected void Button1_Click(object sender, EventArgs e) { Response.Write("hello world"); }
程序写好后将程序发布到IIS上,方法如下
右键单击项目名称,然后选择“发布”
发布方式选择“文件系统”,目标位置选择一个空的文件夹,如下图是在D盘新建了一个 名称为“test”的文件夹
然后单击发布,发布成功之后到I盘下找到'IIS'文件夹,打开查看
打开IIS (打开IIS的方法为控制面板----管理工具----Internet信息服务)
打开后界面如下
展开左边的节点(网站站点)
右键“网站”,选择“添加网站”
网站名称填写有意义的名称,物理路径选择存放发布后的文件的文件夹(I盘下的IIS),
端口选择除“80”意外的端口,这里使用7251(端口是有一定范围的)
然后展开左边的网站节点,可以看到我们新建的网站
选择右边的“内容视图”
右键单击文件“iis.aspx”,选择“浏览”
如果出现如上图一样的错误,是.net framework版本的问题(我们使用VS2010编写程序默认使用的是.NET Frameworkd4.0,而IIS默认使用.NET Frameword2.0)。
解决办法是 点击左边的“应用程序池”,然后在右边选择“thrsday”
在下面的显示中选择thrsday,然后双击“thrsday”,会出现以下界面
将.net framework版本改为4.0即可
点击“确定”,重新浏览”iis.aspx,界面如图
点击按钮
OK,到这里为止,程序就发布好了,只需要将地址栏中的地址发给别人,别人在浏览器的地址栏中输入这个地址就可以访问你的网站了,需要注意的是,这个地址在发给别人之前是需要修改的,需要将localhost改成你本机IP,如将
修改原因是因为localhost表示本机,如果别人使用此地址访问,则访问的是自己机子上的网站,而不是你的机子上的网站
到这里为止,基本就OK了,如果是将来的商业网站,则将localhost替换成实际的静态IP或者域名。
最后总结一下:我们现在学习的是Web开发,像优酷,淘宝,QQ空间等等都属于这个范畴,如我们自己的这个程序大概的流程是这样的
我们在自己的机子(暂用A表示)上发布好网站,然后将地址发给别人(暂用B表示),假设地
地址是http://192.168.53.50;7251/WebForm1.aspx
B在自己机子的浏览器的地址栏中输入这个地址,然后回车,就向A发了一条请求(因为A的IP地址为192.168.53.50),表示要请求A机子上发布到端口7251上的网站下面的名称为WebForm1.aspx的文件
A接收到请求后对WebForm1.aspx进行处理(关于如何处理,以后有机会再说),然后将这个文件发送给B(暂时可以这么理解,其实中间经过了其他转换)
B接受到这个文件后(确切的说是B机子上的浏览器接收到这个文件),就将这个文件显示出来,就是我们看到的画面
B点击按钮后,一条请求又发送给A
A接受后知道是B用户点击了哪个按钮,然后去后台寻找这个按钮的单击事件
Response.Write("hello world");
这段代码在A机子上执行,其中Response.Write方法将“hello world”发送到A机子的浏览中
A机子上的浏览器接收到”hello world”后进行显示出来,就是我们最后看到的画面