在线开通IIS站点及SERV-U(5.X以上)FTP源码实例

IIS版本不限,FTP版本SERV-U 5.X以上,可实际操作使用,没有增加FSO安全权限操作,纯ASP代码无组件。

addyh.asp

<%
if session("pass")="" then
response.redirect "error.asp?id=003"
response.end
end if
%>
<html>
<head>
<title>宁波科宇网??个人网页申请</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<script language="Javascript">
function CheckIfEnglish( String )
{
    var Letters = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890-";
     var i;
     var c;
      if(String.charAt( 0 )=='-')
        return false;
      if( String.charAt( String.length - 1 ) == '-' )
          return false;
     for( i = 0; i < String.length; i ++ )
     {
          c = String.charAt( i );
          if (Letters.indexOf( c ) < 0)
             return false;
     }
     return true;
}

function checkSubmit() {
    var EmailReg = /^[._a-z0-9]+@([abcdefghijklmnopqrstuvwxyz1234567890-]+/.)+[a-z0-9]{2,3}$/;
        if (document.form.name.value == "") {
                alert("请输入您要注册的用户名!");
                document.form.name.focus();
                return false;
        }

        if (!CheckIfEnglish(document.form.name.value )) {
                alert("用户名不能输入中文及非法字符!");
                document.form.name.focus();
                return false;
        }

        if ((document.form.pass.value == "")&&(document.form.rpass.value == "")) {
                alert("密码不能为空!");
                document.form.pass.focus();
                document.form.rpass.focus();
                return false;
        }

        if ((document.form.pass.value)!=(document.form.rpass.value)) {
                alert ('二次密码输入不一样!');
                document.form.pass.focus();
                document.form.rpass.focus();
                return false;
        }

        if (document.form.email.value == "") {
                alert("请输入您的Email!");
                document.form.email.focus();
                return false;
        }

        if ((!EmailReg.test(document.form.email.value))&&(document.form.email.value!='')) {
                alert ('Email的格式不正确!');
                document.form.email.focus();
                return false;
        }

        return true;
}
</script>
<script language="JavaScript">
<!--
function MM_reloadPage(init) {  //reloads the window if Nav4 resized
  if (init==true) with (navigator) {if ((appName=="Netscape")&&(parseInt(appVersion)==4)) {
    document.MM_pgW=innerWidth; document.MM_pgH=innerHeight; οnresize=MM_reloadPage; }}
  else if (innerWidth!=document.MM_pgW || innerHeight!=document.MM_pgH) location.reload();
}
MM_reloadPage(true);
// -->
</script>
</head>
<body bgcolor="#FFFFFF" text="#000000" background="crystal.jpg">
<p align="center"> </p>
<p align="center"><b><font size="6" color="#333333">宁波科宇网??个人网页申请</font></b></p>
<p align="center"></p>
<table width="65%" border="0" align="center">
  <tr>
    <td>
      <form name="form" method="post" action="page.asp">
        <p><b>用户名称:</b>
          <input type="text" name="name" size="10">     
        * <br>   
          注意:用户名只能由英文字母(a-z、A-Z),数字(0-9)构成,不能有空格。<br>   
          <b>密  码:</b>     
          <input type="password" name="pass" size="10">     
          *</p>      
        <p><b>确认密码:</b>      
          <input type="password" name="rpass" size="10">     
          *(确认上面的密码)</p>      
        <p><b>您的MAIL:</b>     
          <input type="text" name="email" size="20">*(请正确填写)   
        </p>   
        <p>   
          <input type="submit" name="Submit" value="提交" onClick ="javascript:return checkSubmit()">   
          <input type="reset" name="Submit2" value="重写">      
          <br>     
          其中*号项目为必填项目!</p>     
      </form>     
    </td>     
  </tr>     
</table>     
<p align="center"><font color="#FF0000"> 注意:本空间可以安装BBS论坛,严格禁止江湖、聊天室等严重占用资源的程序运行。<br>
一经发现,删除全部程序及FTP帐号,并不于通知!</font></p>   
<p align="center"> </p>   
<p align="center">-==<a href="mailto:support@kydn.com">宁波科宇网</a>==-<br>   
CopyRight By YuYao KeYu Net Tech Co.,Ltd 1999-2003</p>
</body>     
</html>

page.asp

<%
if session("pass")="" then
response.redirect "error.asp?id=003"
response.end
end if
%>
<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<%
vname=request("name")
vpass=request("pass")
vrpass=request("rpass")
vemail=request("email")

Dim WRoot, WNumber, WComment, WPort, BindingsList, InProcFlag
Dim Domain, IP, dbpath
Dim ServiceObj, ServerObj, VDirObj

dbpath=server.mappath("w8^f%d2b.asp")   '记录站点用户的数据库名
Domain = "yydns.cn"                     '创建用户站点的三级域名后缀,注意不要加“http://”
IP = ""                                 '服务器WEB站点的IP地址
WRoot = "e:/tmp/"&vname                 '用户站点在服务器上创建的硬盘绝对路径,如“e:/tmp/”
%>
<%
if request.form("name")="" then
response.write "错误提示:请输入用户名!"
response.end
end if
if request.form("pass")="" then
response.write "错误提示:请输入口令!"
response.end
end if
if request.form("pass")<>request.form("rpass") then
response.write "错误提示:两次口令不相符!"
response.end
end if
if request.form("email")="" then
response.write "错误提示:必须输入你的正确EMAIL!"
response.end
end if
%>
<%
set myconn=server.createobject("ADODB.CONNECTION")
myconn.open "driver={Microsoft access driver (*.mdb)};dbq="&dbpath
SQL="select * from hostname where 用户名='"&vname&"'"
set list=myconn.execute(sql)
%>
<% if list.eof then%>
<%
set rs=server.createobject("ADODB.RecordSet")
rs.Open "hostname", myconn, adOpenDynamic, 3
rs.addnew
rs("用户名")=vname
rs("密码")=vpass
rs("邮箱")=vemail
rs.update
rs.close

Set myfileobject=server.createobject("Scripting.FileSystemObject")
myfileobject.createfolder("e:/tmp/"&vname)
set afile=myfileobject.getfile("e:/host/person.htm")
afile.copy "e:/tmp/"&vname&"/index.htm"

set afile=myfileobject.getfile("e:/host/line113.gif")
afile.copy "e:/tmp/"&vname&"/line113.gif"

set afile=myfileobject.getfile("e:/host/bg11.gif")
afile.copy "e:/tmp/"&vname&"/bg11.gif"

set afile=myfileobject.getfile("e:/host/c24.gif")
afile.copy "e:/tmp/"&vname&"/c24.gif"

'创建FTP帐号
Dim objFileSystem, wrfile, rrfile, ss, prev, d, mm, nn, ii, jj

Set objFileSystem = Server.CreateObject("Scripting.FileSystemObject")
'请将SER-U安装的路径替换掉
set wrfile=objfilesystem.opentextfile("e:/Serv-U/ServUDaemon.ini")
set rrfile=objfilesystem.createtextfile("e:/host/linshi.ini",true)
ss=wrfile.readline
do until left(trim(ss),4)="User"
rrfile.writeline(ss)
ss=wrfile.readline
loop
do while left(ss,4)="User"
prev=ss
rrfile.writeline(ss)
ss=wrfile.readline
loop
d=instr(prev,"=")
if d=6 then
mm=mid(prev,5,1)
elseif d=7 then
mm=mid(prev,5,2)
elseif d=8 then
mm=mid(prev,5,3)
end if
nn=mm+1
ii=Request.Form("name")
jj="User"&nn&"="&ii&"|1|0"

rrfile.writeline(jj)
rrfile.writeline(ss)
ss=wrfile.readall
rrfile.write(ss)

rrfile.writeline("[USER="&vname&"|1]")
rrfile.writeline("Password="&vpass)
rrfile.writeline("HomeDir=e:/tmp/"&vname)
rrfile.writeline("RelPaths=1")
rrfile.writeline("HideHidden=1")
rrfile.writeline("ChangePassword=1")
rrfile.writeline("DiskQuota=1|51200000|0")
rrfile.writeline("MaxUsersLoginPerIP=2")
rrfile.writeline("SpeedLimitUp=102400")
rrfile.writeline("SpeedLimitDown=102400")
rrfile.writeline("TimeOut=600")
rrfile.writeline("Access1=e:/tmp/"&vname&"|RWAMLCDP")
rrfile.close
wrfile.close
objfilesystem.copyfile "e:/host/linshi.ini" ,"e:/Serv-U/ServUDaemon.ini",true

set objfilesystem=nothing
set wrfile=nothing
set rrfile=nothing

'创建站点(vname.Domain.com)
set rs1=myconn.execute("select * from hostname where 用户名='"&vname&"'")
WNumber = rs1("id")
WNumber = WNumber + 4   '编号4根据ACCSEE中的最后一个记录ID编号与最后一个WEB站点的W3SVC编号来确定,只要WNumber值不小于最后一个WEB站点的W3SVC编号即可。
rs1.close

BindingsList = Array(0)
InProcFlag = False

Set ServiceObj = GetObject("IIS://Localhost/W3SVC")

  WComment = vname+ "." + Domain
  BindingsList(0) = IP + ":80:" + WComment
  WPort = BindingsList  ' Port property is a collection of port bindings

  Set ServerObj = ServiceObj.Create("IIsWebServer", WNumber)
  ServerObj.ServerSize = 1            ' 站点命中性能调整 0 - <10,000   1 - < 100,000   2 - > 100,000
  ServerObj.ServerComment = WComment
  ServerObj.ServerBindings = WPort
' ServerObj.DefaultDoc = "login.htm"  ' 添加站点IIS默认首页
  ServerObj.SetInfo

  Set VDirObj = ServerObj.Create("IIsWebVirtualDir", "Root")
  VDirObj.AppCreate InProcFlag
  VDirObj.Path = WRoot
  VDirObj.AccessRead = True             ' 读权限 - True
  VDirObj.AccessWrite = False           ' 写权限 - True
  VDirObj.AccessScript = True           ' 脚本权限 False - 无权限   True - 纯脚本权限
  VDirObj.AccessExecute = False         ' 执行权限 False - 无执行权限   True - 有执行权限
  VDirObj.AppFriendlyName = WComment    ' 应用程序名
  VDirObj.EnableDirBrowsing = False     ' 目录浏览许可 - True
  VDirObj.EnableDefaultDoc = True       ' 允许IIS默认首页 - True
  VDirObj.AppIsolated = 2               ' 应用程序保护 0 - 低   1 - 高   2 -  中
  VDirObj.SetInfo

  ServerObj.Start

set VDirObj=nothing
set ServerObj=nothing
set ServiceObj=nothing
set myconn=nothing
set rs=nothing
set rs1=nothing
set myfileobject=nothing

'-------------给用户发信通知start-------------
dim CLStr,msg,mailserver,username,Epass,receive,receive1
CLStr=Chr(13) & Chr(10)

receive=Request.Form ("email")                          '客户提交信息的email地址

'请在此修改相关信息
mailserver="mail.kydn.com"                                '邮局服务器地址(smtp服务器地址)
username="test@kydn.com"                                'smtp服务器验证登陆名(邮局中开设的任何一个信箱的地址)
Epass="12345678"                                        'smtp服务器验证密码(信箱密码)
receive1="test@kydn.com"                                '接受反馈信息的email地址(可以是您的任何有效信箱)
'修改结束

Set msg = Server.CreateObject("JMail.Message")
msg.silent = true
msg.Logging = true
msg.Charset = "gb2312"
msg.MailServerUserName = username
msg.MailServerPassword = Epass   
msg.From = username   
msg.FromName = "宁波科宇网"
msg.AddRecipient (receive)
msg.AddRecipient (receive1)
msg.Subject = "免费个人主页空间开通信!"

msg.Body = "请在一周内上传主页,并做好本站LOGO连接,否则删除空间帐号!"&CLStr
msg.Body = msg.Body&"站点无首页或连续30天内无更新删除空间帐号!"&CLStr&CLStr
msg.Body = msg.Body&"以下是你主页空间的详细信息:"&CLStr&CLStr
msg.Body = msg.Body&"空间参数:50M+Asp+Accsee+Jmail+LyfUpload"&CLStr&CLStr
msg.Body = msg.Body&"网站地址:http://"&WComment&CLStr
msg.Body = msg.Body&"FTP 地址:ftp://"&WComment&CLStr
msg.Body = msg.Body&"登陆帐号:"&Request.Form("name")&CLStr
msg.Body = msg.Body&"管理密码:"&Request.Form("pass")&CLStr
msg.Body = msg.Body&"联系信箱:"&Request.Form("email")&CLStr
msg.Body = msg.Body&CLStr&CLStr
msg.Body = msg.Body&"空间使用有关限制事项:http://bbs.kydn.com/dvbbs/dispbbs.asp?boardID=9&ID=1489"&CLStr
msg.Body = msg.Body&"FTP服务器登陆注意事项:http://bbs.kydn.com/dvbbs/dispbbs.asp?boardID=9&ID=2964"&CLStr
msg.Body = msg.Body&"用户FTP密码修改方法http://bbs.kydn.com/dvbbs/dispbbs.asp?boardID=9&ID=3120"&CLStr
msg.Body = msg.Body&CLStr&CLStr
msg.Body = msg.Body&"专业付费论坛空间一览:http://bbs.kydn.com/dvbbs/dispbbs.asp?boardID=24&ID=3043"&CLStr
msg.Body = msg.Body&"本站服务多种付费方式:http://www.kydn.com/user/payway.asp"&CLStr
msg.Body = msg.Body&CLStr&CLStr
msg.Body = msg.Body&"『宁波科宇网』主力站:http://www.kydn.com/"&CLStr
msg.Body = msg.Body&"欢迎访问『宁波科宇网』技术论坛:http://bbs.kydn.com/"&CLStr

msg.Send (mailserver)
msg.close
set msg = nothing
%>
<html>
<head>
<title>恭喜您!你的主页空间及FTP已经生效!</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
</head>

<body bgcolor="#FFFFFF">
<div align="center">
  <p><font size="2">恭喜您!</font></p>
  <p><font size="2">你的主页空间及FTP已经生效!</font></p>
  <p><font size="2">请使用FTP软件进行上传!</font></p>
  <p><font size="2">FTP地址:<a href="ftp://<%=WComment%>">ftp://<%=WComment%></a></font></p>
  <p><font size="2">帐号:<%=vname%></font></p>
  <p><font size="2">密码:<%=vpass%></font></p>
  <p><font size="2">联系EMAIL:<a href="mailto:<%=vemail%>"><%=vemail%></a></font></p>
  <p></p>
  <p><font size="2">你的网址是:<a href="http://<%=WComment%>">http://<%=WComment%></a></font></p>
  
</div>
</body>
<%else%>
<center>对不起,您的用户名<%=vname%>已被他人所用,请您换一个用户名申请<P><a href="./">返回申请页面</a></p></center>
<%
set myconn=nothing
set rs=nothing
set rs1=nothing
set myfileobject=nothing
end if
%>
</html>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值