windows平台下建立HTTP站点及FTP服务器站点

基于win平台下搭建一个ftp,或http服务器站点,可以方便的实现文件共享。

比如FTP站点:

基于窗口的访问:ftp://192.168.1.202/

基于web的访问:

 

HTTP站点访问:

 

下面介绍两种服务器搭建的方法。 

搭建FTP服务器步骤(以win7为例)

  1. 为windows开启ftp功能:控制面板-->程序和功能-->打开或关闭Windows功能将如图的选框选中

  

问题就在这里,打开或关闭windows功能一片空白,想尽办法都不行,所以尝试了后面的基于命令行直接开启并建立ftp,http站点。

解决办法可以参考:解决打开或关闭Windows功能空白问题可以通过以下几个步骤来解决,每完成一步后打开Windows功能查看是否解决。

2、添加FTP站点:打开控制面板-->管理工具-->双击Internet信息服务(IIS)管理器如下图添加FTP站点

3、设置站点名称和想要公开的路径

4、绑定IP地址和ssl设置:

IP地址填本机地址,端口默认21,ssl是一种数字加密证书,可申请,在此没有可选择无。

 5、设置权限,建议设置成读取状态,点击完成就大功告成了。

6、如何登陆测试

1>从网页登陆:输入命令ftp://本地IP如下图

登陆成功会出现如下界面,输入用户名和密码即可登陆

注:用户名和密码可右击计算机-->管理-->本地用户和组-->用户-->administrator-->右击修改密码设置即可如下图

用户和密码输入正确的话就会出现你公开的路径

cmd命令行开启IIS信息服务,配置http及ftp服务站点

开启iis信息服务

start /wait dism /online /enable-feature /featurename:IIS-WebServerRole

添加CGI

start /wait dism /online /enable-feature /featurename:IIS-CGI

开启ftp

start /wait dism /online /enable-feature /featurename:IIS-FTPServer
start /wait dism /online /enable-feature /featurename:IIS-FTPSvc
start /wait dism /online /enable-feature /featurename:IIS-FTPExtensibility

iis添加成功之后,会创建一个默认的80网站,因为80端口被其他占用,所以先删掉这个默认的网站,用到appcmd.exe,网上有很多关于这个的介绍。

c:\Windows\System32\inetsrv\appcmd delete Site "Default Web Site"

添加8081端口,name可自定义,如已存在则添加失败,id同理,如不输入id,则默认从1开始增加,http/* 后面配置端口号,这里是8081端口,/physicalPath:后面跟着物理路径

c:\Windows\System32\inetsrv\appcmd add site /name:"8081" /id:4 /bindings:http/*:8081: /physicalPath:"D:\Picture"

开启8081端口的目录浏览,config后面跟网站名称,就是上面配置的name,如不填则对全局配置(哈哈不知道没有效果,没有尝试)

c:\Windows\System32\inetsrv\appcmd set config "8081" /section:directoryBrowse /enabled:true

添加php-CGI模块程序
这里可能会遇到 权限问题,所以先执行 解锁操作,如果不需要此模块,可以忽略,直接跳到下一步,配置端口。

c:\Windows\system32\inetsrv\appcmd unlock config -section:system.webServer/handlers

添加模块,第一行语句只要 fullpath后面改成php-cgi.exe的绝对路径就行了
第2行有几个参数 
path填*.php 因为要对所有的php后缀的文件生效,
verb是请求方式,get head post,
modules是FastCgiModule,默认安装没有这个模块的,所以在上面执行了servermanagercmd -i Web-CGI,这个模块被安装上去,
scriptProcessor填php-cgi.exe的绝对路径

c:\Windows\System32\inetsrv\appcmd.exe set config -section:system.webServer/fastCgi /+"[fullPath='C:\wamp\bin\php\php5.5.12\php-cgi.exe']" /commit:apphost
c:\Windows\System32\inetsrv\appcmd.exe set config -section:system.webServer/handlers /+"[name='PHP-FastCGI',path='*.php',verb='GET,HEAD,POST',modules='FastCgiModule',scriptProcessor='C:\wamp\bin\php\php5.5.12\php-cgi.exe',resourceType='Either']"

iis默认不支持MP4的mime类型,如果需要的话执行下面的命令

c:\Windows\System32\inetsrv\appcmd.exe set config /section:staticContent /+[fileExtension='.mp4',mimeType='video/quicktime']

下面是配置ftp端口

配置21端口,参数同上面的http参数,但注意的是http和ftp共同name和id,所以name和id都不能于http相同

c:\Windows\System32\inetsrv\appcmd add site /name:"21" /id:5 /bindings:ftp://*:21 /physicalpath:"D:\Picture"

关闭ssl

c:\Windows\System32\inetsrv\appcmd set site "21" -ftpServer.security.ssl.controlChannelPolicy:SslAllow -ftpServer.security.ssl.dataChannelPolicy:SslAllow -ftpServer.security.authentication.basicAuthentication.enabled:true

**设置用户的读写
users 为系统用户名
permissions 为读取和写入的权限**

c:\Windows\System32\inetsrv\appcmd set config "21" -section:system.ftpServer/security/authorization /+"[accessType='Allow',users='Gavin',permissions='Read, Write']" /commit:apphost

 

下面附上操作截图

通过cmd命令进入ftp来下载或上传

开始栏输入cmd或者按快捷键win+R出现如图界面

输入"ftp"切换到到ftp下面.然后输入"open 服务器地址".点击回车键.会提示你输入用户名和密码.登陆成功后.输入"cd"命令.会显示"远程目录",输入"dir"命令会显示目录下的文件,权限等相关信息.可以通过"cd 文件名"命令进入到要下载的文件目录下.然后输入"ls"命令 显示文件夹下的所有文件.如图

输入"lcd 本地文件目录"(就是要下载到那个文件夹下 就输入那个目录,如果不输入就是默认c盘的当前系统用户目录下)输入"prompt"命令(打开交互模式,如果是打开的就不需要),最后输入"mget 服务其上要下载的文件名",回车键.这样就可以进行下载了.看到"Transfer complete"就表示下载成功了.到本地路径下就能看到下载的文件了.

参考文献:

1.https://segmentfault.com/a/1190000011308061

2.https://www.cnblogs.com/zhangfengfly/p/6879513.html

3.https://blog.csdn.net/GUOGUOXYES/article/details/64505688

猜你喜欢

转载自blog.csdn.net/Gavinmiaoc/article/details/83928942