整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:

IIS服务器的搭建wind10版

多童鞋说自己是做移动开发的,想挂个简单的Web API,可是服务器又不会搭,这样一来测试就成了问题。看看网上的教程,发现略难懂,而且大多是一个转一个,没价值,所以干脆写几篇文章讲讲简单的Web服务器怎么搭,让不太涉及Web的童鞋快速上手。

我计划把几个主流的,比如Apache、IIS、Nginx等在Windows或者Linux上的搭建方法都说说,由于自己做的是.NET,所以,第一篇先上IIS吧!

一、IIS服务器的搭建

IIS全称Internet Information Service,中文名:Internet信息服务,专用于微软操作系统平台,兼容微软的各项Web技术,尤其是ASP.NET(其实也就在IIS上能跑),除此之外,IIS还支持CGI,IIS7以后的版本对Fast-CGI支持更好,所以PHP 5.3可以使用Fast-CGI和Zend来优化在IIS上的性能,当然早期的ASP也是可以支持的,JSP的支持相对麻烦,而且性能不好,所以基本没人拿IIS跑JSP。

现在,IIS8已经伴随着Windows Server 2012 R2和Windows 8.1的发布而出现在最新的Windows版本中,所以本文就不拿IIS7以前的古董说事了,IIS7以后的版本,变化幅度很小,应该是在优化性能、增加稳定性和添加新的MIME等一些杂项上的处理。

好了,现在让我们开始!

基本步骤如下:

启用功能 -> 设置网站路径和端口 -> 设置权限 -> 设置杂项 -> 正式发布

1.启用功能:

首先,我们以Windows 桌面版系统为例,进入Windows的“控制面板”,如图所示

(Windows 桌面版控制面板)

进入“程序”,然后点“启用或关闭Windows功能”,然后就能看到一下选项,找到Internet Information Services(在Windows 7为Internet信息服务,下同),如图所示

(Windows 桌面版的 Windows 功能)

在Internet Information Services之前的选项框上打勾,会发现有些内容是方块型的,意思是没有完全启用其中的功能,建议按照图片上的介绍把“应用程序开发功能”中的内容全部勾选,要不IIS搭好以后只能挂HTML这种静态网页。勾选完成后,如还需要其他方面的功能,如ODBC日志、动态内容压缩、HTTP重定向等功能,也可以再次勾选,当然现在不勾选以后再加也没问题。

(关闭 Windows 防火墙)

完成后,点击确定,Windows自动安装IIS功能,安装完成后,建议在“系统和安全”中,完全关闭防火墙,保证IIS的其他端口可被访问,在IE或其他浏览器中,打开http://localhost,出现如下界面,则说明搭建成功

(IIS8 欢迎界面)

接下来,我们来看看在Windows Server 2012 R2上的IIS搭建过程

首先,打开“服务器管理器”,在右上角找到“管理”->“添加角色和功能”,如图所示

(Windows Server 2012 R2 服务器管理器添加角色和功能)

接着,一直点击“下一步”,直到“服务器角色”一项,在右侧列表中找到“Web 服务器(IIS)”一项,如图所示

(Windows Server 2012 R2 添加服务器角色)

成功添加角色后,会提示你选择所需的功能,类似前面Windows 桌面版的介绍,选择自己所需的功能,推荐将“应用程序开发”中的所有选项全部勾选!如果作为真正的服务器使用,最好把功能全部配齐,省得再次配置。勾选完后,一路“下一步”等待安装完成即可。

(Windows 7和Windows Server 2008 R2的配置类似对应的桌面版和服务器版,可参照上面的介绍配置)

安装完成后,查看Windows服务,可以发现多出一项名为“World Wide Web Publishing Service”的服务,这个服务用于启动和管理IIS进程,保证Windows开机启动时,自动运行,而不需要某一个用户登录。

(IIS的服务)

2.设置网站路径和端口

虽然服务器功能启用完毕,虽然我们可以在局域网内通过IP地址或者在本机用localhost进行访问,但我们只是浏览了微软给我们的示例,我们需要让IIS展示我们自己写好的网站,此时就需要将网站相关的文件,如:aspx、html、dll等,这里,我们用ASP.NET中最简单的WebForm形式单页面演示如何部署一个真正的动态网站。

首先,假设我们的网站已经在VS中完全开发完成,如图所示,网站基本目录文件如下:

(一个基本的WebForm网站)

提前说明一点:这个网站就是一个基本的Web API,根据参数id(GET或POST提交),从数据库中取出对应ID的数据,当id为0或不能转换为int型数据时,返回所有数据,超出范围则返回空数据。

如果直接运行或者调试,会看到下面的画面,其中,浏览器地址是localhost+一个随机的端口号,这是VS将网站挂在了自带的IIS Express上,但IIS Express仅允许本地调试使用,如果在局域网测试或者把VS的调试关闭,则会发现网站不能访问。

(IIS Express展示结果)

于是,我们现在可以有两种方式整理网站需要的文件,第一是自己手动去复制,第二是用VS自动打包。如果不是网站特别大,文件特别多,还是建议自己复制。如图所示,打开项目的源文件夹,我们会看到许多文件,有.cs、.vscxproj、.config等,其中,我们需要的只有以下几种类型:

第一,网站的视图或页面文件,WebForm为aspx,MVC为cshtml或aspx,WebService为asmx等等

第二,网站的资源文件,如js脚本、图片、css文件等

第三,网站的动态链接库,即整个bin文件夹,及及其中的dll文件

第四,网站的配置文件,Web.config

(网站源码文件夹)

剩下的文件,不管以什么后缀名结尾,全部都可以不要,但是不要删,都是你自己的心血!

把这些文件复制到你需要挂网站的地方,如果是服务器系统,只要不是系统目录,你可以任意放,如果是桌面版系统,别放在桌面上、系统目录就行,推荐放在以下几种路径:

第一,IIS默认路径,C:\inetpub\wwwroot\

第二,非C盘的其他路径,如D:\xxx

第三,非网络路径的其他可读写、脚本可执行路径

接着,我们要在IIS里进行网站路径设置。打开IIS,在左边的列表中看到“网站”一项,如图所示,这里列出了所有在本机IIS服务器上挂载的站点

(IIS中的网站列表)

现在要考虑是将网站挂在本机的另一个TCP端口(Default Web Site默认绑定80端口,可以将自己的网站挂在8080等端口上)上,还是将网站挂在80端口下的一个虚拟目录中,这里分别介绍。

首先,如果我们将网站挂在8080端口上,我们需要在“网站”中新建一个网站,大致操作为:右键“网站”->“添加网站”->输入信息->点击“确定”即可,其中,“网站名称”任意填写,“物理路径”选择上面放了网站相关文件的目录路径,剩下端口改为8080或者其他未占用端口都行,点击确定,访问http://localhost:8080/或者IP地址即可看到自己的网站了,如图所示

(添加一个新网站)

其次,我们来看一下虚拟路径的添加方法,所谓虚拟路径,就是类似http://www.xiyoumobile.com/admin/等访问方法,看似访问了网站中的另一个文件夹,实际上访问了另外一个网站,在IIS中可以选择“添加虚拟目录”和“添加应用程序”两种方法实现,个人推荐后者,因为不用因为新建一个虚拟目录而考虑.dll文件的放置位置。具体操作:对着要添加虚拟目录的网站右键->"添加应用程序"->填写“别名”和“路径”->确定,在浏览器中输入网站即可访问到网站,其中,“别名”请填写希望被访问的虚拟目录名,如http://www.xiyoumobile.com/admin/中,别名就应该填“admin”,而“路径”则按照新建网站的方法填写即可,如图

(添加虚拟目录)

3.设置权限

Windows NT系统出于安全性的考虑,设置了用户组和权限的划分,尤其在普通桌面版或者说家庭版的系统中体现的更为明显,服务器上经常对Administrator赋予了最高权限,有童鞋说,按照上面的方法,搭建完成服务器了以后,Web页面能打开,但是会报错,500或者401等等,基本上是因为权限,如果401就是压根儿啥权限都没有,500有可能是在写本地数据库的时候,文件禁止写入所造成的服务器错误,于是乎,就请各位童鞋仔细查看网站目录的权限是否给够了。

如何检查呢,很简单,打开IIS,在左边的列表中选择一个网站或者虚拟目录,然后在右边的“操作”一栏中,选择“编辑权限”->“安全”,如图所示

(在IIS编辑网站目录权限)

在这里可以看到,我的网站目录权限中有“Everyone”、“Authenticated Users”、“SYSTEM”、“Administrators”等几个用户组或者用户名,并允许“Everyone”用户组进行读取和执行、列出等操作,所以网站的脚本、内容都是允许任何人进行访问或者说获取的,有些童鞋的硬盘中没有设置过权限,有可能就没有Everyone的这个权限,所以有可能访问出现如下情况

(由于权限不够而造成访问失败)

遇到这种情况有就可以在刚才(网站目录文件夹)的“安全”中,添加Everyone或者IIS_IUSRS访问权限,如果需要文件上传,可以将某个文件夹设为可读可写可执行,只要在需要的权限上打上勾即可,如图

(设置IIS_IUSRS的权限)

4.设置杂项

童鞋们该等急了,这下网站应该可以算正式发布了吧,别急,还有点东西要说!!

第一,默认文档

有些童鞋说,安装你说的方法都配置好,怎么打开还是报错啊,就像下面的错误:

HTTP 错误 403.14 - Forbidden

Web 服务器被配置为不列出此目录的内容。

(网站未找到默认文档报错)

但是你会发现如果打http://localhost:8080/Default.aspx又可以访问了,这是因为:IIS默认的默认文档为以下几个:Default.htm、Default.asp、index.htm、index.html、iisstart.htm、default.aspx(在此说明一下,由于Windows系统在路径上不区分大小写,所以IIS上发布的网站也是不区分大小写的),如果你的主页文件不在上述文件之内,不输文档名,默认是无法访问到的(这里我故意删除了Default.aspx),所以,针对这种情况,请自行设置默认文档,方法如下(这里假设要挂php网站):

(添加默认文档)

添加默认文档以后,直接敲域名或者IP及端口号即可方法默认页面了!

第二,数据库连接字符串

有些童鞋因为在本机测试时,SQL Server使用的是Windows身份验证,所以VS自动生成到Web.config中的连接字符串如下所示

[html] view plain copy

  1. <add name="ExampleConnectionString" connectionString="Data Source=.\SQLEXPRESS;Initial Catalog=Example;Integrated Security=True"
  2. providerName="System.Data.SqlClient" />

而如果直接将这个连接字符串使用在网站上时,会发现网页提示:

无法打开登录所请求的数据库 "Example"。登录失败。

用户 'IIS APPPOOL\DefaultAppPool' 登录失败。

(数据库异常)

所以,一定要注意,在将网站挂载到真正的IIS服务器上前,请将修改Web.config中的字符串,确保数据库使用SQL Server身份验证,且如果数据库装在本机,那么Data Source最好设为localhost,1433,如下面的代码所示:

[html] view plain copy

  1. <add name="ConnectionString" connectionString="Data Source=localhost,1433;Initial Catalog=Example;User
  2. ID=sa;Password=123456" providerName="System.Data.SqlClient"/>

第三,.NET Framework版本

尤其是在Windows 7版本中,默认只支持.NET Framework 3.5,如果.NET Framework 4和IIS的安装顺序不同,还会造成.NET没有在IIS中注册的问题,所以建议不管先装.NET Framework,还是先装IIS,都在挂网站前,以管理员身份运行cmd,然后进X:Windows\Microsoft.NET\Framework\v4.0.30319(64位:X:Windows\Microsoft.NET\Framework64\v4.0.30319,X代表系统安装盘,如C),然后执行命令aspnet_regiis.exe -i,这样可以保证.NET4被注册到IIS,IIS才能正常运行.NET4版本以上的程序。

再者,如果应用开发时选择了.NET4,而网站应用程序选择的是.NET2,也是不行的。

这两者都属于运行框架异常,必须配置正确,否则就会报错!

(选择正确的应用程序池)

第四,禁用调试信息

调试信息一般在本地开发时有用,正式发布后如果让访问者看到,也会暴露一些网站信息,同时显得开发者很业余,所以请在正式部署后,关闭调试信息,具体操作如下:

修改Web.config,将下面的内容修改

[html] view plain copy

  1. <system.web>
  2. <compilation debug="true" targetFramework="4.0" />
  3. </system.web>

修改后

[html] view plain copy

  1. <system.web>
  2. <compilation debug="false" targetFramework="4.0" />
  3. </system.web>

这样就关闭了远程访问时的调试信息

第五,添加MIME类型

如果需要让网站提供一些新文件访问的服务,必须在IIS中添加一些文件的后缀名和MIME类型,尤其是IIS7,默认没有.mp4格式文件的支持,如果不添加MIME类型,HTML5就不容易实现,还有其他的文件,如apk、ipa等安装包,由于不常用,在IIS上也需要手动添加进来,如果不添加,就会报“404 Not Found”的错误,添加方法如下:

(添加MIME类型)

第六,其他设置

其他的设置包括访问控制、IP地址过滤、反向代理、SSL、日志、CGI等等,这个根据个人需要来配置,而且都不是很困难,除非你要在IIS上跑Java。关于IIS的反向代理,童鞋们可以戳我的另一篇博文:《IIS上的方向代理》,以后我会继续写面向新手的Web服务器搭建教程,涵盖Nginx、Apache和IIS上的PHP等等,感谢大家的关注!无限编程网http://cnc.fjwqss.cn!

【文章图片来源网络仅提供技术学习如有侵权请联系删除】

indows 服务器用IIS搭建网站详细小白级教程:

通常开通服务器后,需要进行网站搭建,下面是windows2003及2008系统搭建网站的操作方法

网站搭建前需要将域名解析到搭建的本机服务器上,即绑定IP,在哪里搞的域名就在哪里解析,备案域名需要联系IDC售后过白名单

一、Windows 2003

1、 如图,打开服务器IIS程序,点击“ 网站 ”右键空白部分“ 添加网站 ”

2、 进入网站创建向导——网站描述(可以随意填写)

  1. IP地址默认为本机IP,TCP端口即网站使用端口,备案域名默认用80端口,未备案的域名随意,只要不和其他端口冲突就行,比如888、999、666这样的都行,主机头填写域名 例baidu.com/或者idc02.com等域名

4、网站主目录路径——选择 网站源文件夹 路径

5、网站访问权限勾选——浏览

6、如图,到这里网站就已经搭建完成。(由于windows 2003系统安装的是较低版本的IIS,所以有些网页文件格式无法读取,需要手动添加)

7、例如index.html,html的格式是windows 2003系统无法自动识别读取的,点击已搭建的网页,右键——属性——文档 添加index.html格式 点击 应用 即可;

二、Windows 20081、服务器管理——角色——web服务器(iis)——网站 (需要在除C盘外,创建一个文件夹,用于存储网站文件)

2、右键空白——添加网站

3、“ 网站名称 ” 填写本机搭建网站自设置名称, “ 物理路径 ” 为网站源文件路径;

“ IP地址 ” 一般默认为本机IP可默认不填写 “ 端口 ”填写网站域名所需使用的端口 ,“ 主机名 ” 即为网站域名

Windows 服务器用IIS搭建网站详细教程

注:80端口为国内默认网站端口,使用80端口对域名有要求,必须有 备案域名才可以使用80端口(限制端口)

无备案域名只能使用除80以外的端口进行搭建,打开方式即为域名加端口,或者ip加端口

搭建好的网站,如果出现打不开的情况,需检查是否 解析 到本机服务器,域名是否过白名单(备案域名需要找IDC售后过白名单,未备案域名使用除80以外端口无需过白,解析后直接操作即可)

没有任何限制的服务器,你想在服务器里干嘛就干嘛!

有一方自己的小世界BGP线路IP:

103.219.36.1

103.219.36.2

103.219.36.3

103.219.36.4

103.219.36.5

103.219.36.6

103.219.36.7

103.219.36.8

103.219.36.9

103.219.36.10

103.219.36.11

103.219.36.12

103.219.36.13

103.219.36.14

103.219.36.15

103.219.36.16

103.219.36.17

103.219.36.18

103.219.36.19

103.219.36.20

103.219.36.21

103.219.36.22

103.219.36.23

103.219.36.24

103.219.36.25

103.219.36.26

103.219.36.27

103.219.36.28

103.219.36.29

103.219.36.30

103.219.36.31

103.219.36.32

103.219.36.33

103.219.36.34

103.219.36.35

103.219.36.36

103.219.36.37

103.219.36.38

103.219.36.39

103.219.36.40

103.219.36.41

103.219.36.42

103.219.36.43

103.219.36.44

103.219.36.45

103.219.36.46

103.219.36.47

103.219.36.48

103.219.36.49

103.219.36.50

103.219.36.51

103.219.36.52

103.219.36.53

103.219.36.54

103.219.36.55

103.219.36.56

103.219.36.57

103.219.36.58

103.219.36.59

103.219.36.60

103.219.36.61

103.219.36.62

103.219.36.63

103.219.36.64

103.219.36.65

103.219.36.66

103.219.36.67

103.219.36.68

103.219.36.69

103.219.36.70

103.219.36.71

103.219.36.72

103.219.36.73

103.219.36.74

103.219.36.75

103.219.36.76

103.219.36.77

103.219.36.78

103.219.36.79

103.219.36.80

103.219.36.81

103.219.36.82

103.219.36.83

103.219.36.84

103.219.36.85

103.219.36.86

103.219.36.87

103.219.36.88

103.219.36.89

103.219.36.90

103.219.36.91

103.219.36.92

103.219.36.93

103.219.36.94

103.219.36.95

103.219.36.96

103.219.36.97

103.219.36.98

103.219.36.99

103.219.36.100

103.219.36.101

103.219.36.102

103.219.36.103

103.219.36.104

103.219.36.105

103.219.36.106

103.219.36.107

103.219.36.108

103.219.36.109

103.219.36.110

103.219.36.111

103.219.36.112

103.219.36.113

103.219.36.114

103.219.36.115

103.219.36.116

103.219.36.117

103.219.36.118

103.219.36.119

103.219.36.120

103.219.36.121

103.219.36.122

103.219.36.123

103.219.36.124

103.219.36.125

103.219.36.126

103.219.36.127

103.219.36.128

103.219.36.129

103.219.36.130

103.219.36.131

103.219.36.132

103.219.36.133

103.219.36.134

103.219.36.135

103.219.36.136

103.219.36.137

103.219.36.138

103.219.36.139

103.219.36.140

103.219.36.141

103.219.36.142

103.219.36.143

103.219.36.144

103.219.36.145

103.219.36.146

103.219.36.147

103.219.36.148

103.219.36.149

103.219.36.150

103.219.36.151

103.219.36.152

103.219.36.153

103.219.36.154

103.219.36.155

103.219.36.156

103.219.36.157

103.219.36.158

103.219.36.159

103.219.36.160

103.219.36.161

103.219.36.162

103.219.36.163

103.219.36.164

103.219.36.165

103.219.36.166

103.219.36.167

103.219.36.168

103.219.36.169

103.219.36.170

103.219.36.171

103.219.36.172

103.219.36.173

103.219.36.174

103.219.36.175

103.219.36.176

103.219.36.177

103.219.36.178

103.219.36.179

103.219.36.180

103.219.36.181

103.219.36.182

103.219.36.183

103.219.36.184

103.219.36.185

103.219.36.186

103.219.36.187

103.219.36.188

103.219.36.189

103.219.36.190

103.219.36.191

103.219.36.192

103.219.36.193

103.219.36.194

103.219.36.195

103.219.36.196

103.219.36.197

103.219.36.198

103.219.36.199

103.219.36.200

103.219.36.201

103.219.36.202

103.219.36.203

103.219.36.204

103.219.36.205

103.219.36.206

103.219.36.207

103.219.36.208

103.219.36.209

103.219.36.210

103.219.36.211

103.219.36.212

103.219.36.213

103.219.36.214

103.219.36.215

103.219.36.216

103.219.36.217

103.219.36.218

103.219.36.219

103.219.36.220

103.219.36.221

103.219.36.222

103.219.36.223

103.219.36.224

103.219.36.225

103.219.36.226

103.219.36.227

103.219.36.228

103.219.36.229

103.219.36.230

103.219.36.231

103.219.36.232

103.219.36.233

103.219.36.234

103.219.36.235

103.219.36.236

103.219.36.237

103.219.36.238

103.219.36.239

103.219.36.240

103.219.36.241

103.219.36.242

103.219.36.243

103.219.36.244

103.219.36.245

103.219.36.246

103.219.36.247

103.219.36.248

103.219.36.249

103.219.36.250

103.219.36.251

103.219.36.252

103.219.36.253

103.219.36.254

103.219.36.255

谓IIS默认文档其实就是指某一个目录下不指定首先打开文件的情况下默认打开的文件。默认文档往往用于网站目录,当访问某一个网站目录的时候首先打开默认文档页面,默认文档可以是.html,.htm,.shtml,.asp,.php,.aspx,.jsp,.do等不同后缀的文件。默认文档不是一个单独的文件,它是一组文件,有优先级不同的一组文件。

IIS默认文档的顺序:

显示的次序决定了它显示的优先级别,如果一个站点默认文档是:index.html,default.asp,default.html,index.htm,那么对应的含义就是当访问这个站点的时候,首先打开该对应目录下名称为index.html的文件,如果找不到该文件则打开第二个default.asp这个文件,如果仍找不到依此继续找下去,若在所有的默认文档序列里都找不到对应的文件,则会返回一个404错误(找不到文件)。