📄 createvhost.asp
字号:
<% ModuleCode="M0910" %>
<!--#include file="../../../Include/Reference.asp"-->
<%
Call PrintPageHead
%>
<!--#include file="../../../Include/connect.asp"-->
<!--#include file="../../../Include/SendMail.asp"-->
<!--#include file="../../../Include/WEBCtrl.asp"-->
<%
Dim Bindings,SiteNum
UserID=session("UserID")
IP=Request.ServerVariables("REMOTE_ADDR")
ProdCode=Request.Form("ProdCode")
'HostName=Request.Form("hostname")
HostName=Request.Form("FtpAccount")
Domain=Request.Form("domain")
DomainHead=Request.Form("domaintop")
FtpAccount=Request.Form("ftpaccount")
FtpPassword=Request.Form("ftppassword")
MailDomain=Domain
MailPassword=Request.Form("mailpassword")
ProdYear=Request.Form("ProdYear")
BuyYear=Request.Form("BuyYear")
if BuyYear=0 or BuyYear="" or (not IsNumeric(BuyYear)) then
Response.Write "<br><br><br><p align='center' class='titletext'>请输入购买的年限!"
Call PrintPageBottom
Response.End
end if
if Request.Form("paytype")="1" then '试用
HowLong=Sys_Opt_ProdTryDays
HowLongYear=0
ProdPrice=0
HowMuch=0
BeginDate=Now()
EndDate=DateAdd("d",HowLong,BeginDate)
strBeginDate=FormatDate(BeginDate)
strEndDate=FormatDate(EndDate)
Set Rs = Server.CreateObject("ADODB.Recordset")
strSQL="Select HaveMoney+OverMoney as HaveMoney, LevelCode, UserName, EMail from T_DNS_UserInfo Where UserID=" & UserID
Rs.open strSQL,Cn
if Rs.eof then
Rs.Close
Response.Write "<br><br><br><p align='center' class='titletext'>用户错误,无法购买!"
Call PrintPageBottom
Response.End
else
UserName=Rs("UserName")
EMail=Rs("EMail")
end if
Rs.Close
strSQL="exec SP_CreateVHost " & +_
"'" & Session("UserID") & "'," & +_
"'" & "查询" & "'," & +_
"'" & Request.ServerVariables("REMOTE_ADDR") & "'," & +_
"'" & ProdCode & "'"
Set Rs= Cn.Execute(strSQL)
%>
<br><br><br>
<p align="center" class="titletext">
<%
if Rs("result")<>0 then
Rs.Close
Response.Write Rs("msg")
Call PrintPageBottom
Response.End
end if
ServerCode=Rs("ServerCode")
ServerIP=Rs("ServerIP")
'SiteSize=Rs("SiteSize")
SiteSize=Sys_Opt_TestSize
ServerType=Rs("ProdMap")
ServerDomain=Rs("ServerDomain")
BPCode=Rs("BPCode")
MaxSecDN=Rs("ThiNB")
ProdName=Rs("ProdName")
ServerPubIP=Rs("ServerPubIP")
MaxIIS=RS("MaxIIS")
MaxCPU=RS("MaxCPU")
MaxBandWidth=RS("MaxBandWidth")
Rs.Close
strSQL="Select * from T_DNS_AllVH where VHName='" & FtpAccount & "' or VHName='" & HostName & "'"
Rs.open strSQL,Cn
if not Rs.eof then
Rs.Close
Response.Write "此虚拟主机名重复了,请重新输入虚拟主机名!"
Call PrintPageBottom
Response.End
end if
Rs.Close
if IsFtpUserExist(ServerIP,FtpAccount)=0 then
Response.Write "该FTP用户已经存在, 请重新输入用户名称!"
Call PrintPageBottom
Response.End
end if
if CreateWebDirectory(ServerIP,FtpAccount)<>0 then
Response.Write "建立虚拟主机失败, 请重新尝试! 错误码: 1"
Call PrintPageBottom
Response.End
end if
Redim Bindings(0)
Bindings(0)=":80:" & FtpAccount & ServerDomain
if CreateIISServer(ServerIP,FtpAccount,FtpAccount & "\" & Opt_System_UserWebRoot,Bindings,ServerType,SiteNum)<>0 then
Response.Write "建立虚拟主机失败, 请重新尝试! 错误码: 2"
Call PrintPageBottom
Response.End
end if
if CreateFtpUser(ServerIP,FtpAccount,FtpPassword,FtpAccount,CStr(Cint(SiteSize)*1000*1024),strEndDate)<>0 then
Response.Write "建立虚拟主机失败, 请重新尝试! 错误码: 3"
Call PrintPageBottom
Response.End
end if
if SetLogFileDirectory(ServerIP,SiteNum,GetUserHomeDir(ServerIP,FtpAccount) & Opt_System_UserLogRoot)<>0 then
Response.Write "建立虚拟主机失败, 请重新尝试! 错误码: 4"
Call PrintPageBottom
Response.End
end if
if CreateDBVisualPath(ServerIP, SiteNum, FtpAccount & "\" & Opt_System_DBRoot,"DataBase")<>0 then
Response.Write "建立虚拟主机失败, 请重新尝试! 错误码: 5"
Call PrintPageBottom
Response.End
end if
if SetMaxConnections(ServerIP, SiteNum, MaxIIS)<>0 then
Response.Write "建立虚拟主机失败, 请重新尝试! 错误码: 6"
Call PrintPageBottom
Response.End
end if
Set RsNo= Cn.Execute("SP_PublicNObyRs 'P1050'")
UOID=RsNo("Result")
RsNo.Close
Set RsNo=Nothing
strSQL="Insert into T_DNS_UserOrder (UOID,UOType,UOTime,UOIP,UserID,ProdCode,ProdPrice,ProdNB,TotPrice,HandleUserID,HandleIP,HandleTime,OSCode) values('" & +_
UOID & "','1',getdate(),'" & IP & "'," & UserID & ",'" & ProdCode & "'," & ProdPrice & "," & HowLongYear & "," & HowMuch & "," & UserID & ",'" & IP & "',getdate(),'01')"
Cn.Execute(StrSQL)
Set RsNo= Cn.Execute("SP_PublicNObyRs 'P1120'")
VHID=RsNo("Result")
RsNo.Close
Set RsNo=Nothing
if ServerType="HTML" then
DefaultPage="default.html, default.htm, index.html, index.htm"
elseif ServerType="ASP" then
DefaultPage="default.asp, index.asp, default.html, default.htm, index.html, index.htm"
else
DefaultPage="default.asp, index.asp, default.html, default.htm, index.html, index.htm"
end if
strSQL="insert into T_DNS_AllVH (VHID,UOID,BPCode,STime,UYear,ETime,UserName,PSW,ServerCode,VHDir,VHName,MaxSecDN,MaxSize,ThiDN,BindDomain,DNSeq,DefHomePage,IfWebLogin,FeeStat,WebStat,FTPStat,VHStat,UserID,Stat,MaxIIS,MaxCPU,MaxBandWidth) values('" & +_
VHID & "','" & UOID & "','" & BPCode & "',getdate()," & HowLong & ",'" & strEndDate & "','" & FtpAccount & "','" & +_
FtpPassword & "','" & ServerCode & "','" & FtpAccount & "','" & HostName & "'," & MaxSecDN & "," & SiteSize & +_
",'" & FtpAccount & ServerDomain & "','" & Domain & "'," & SiteNum & ",'" & DefaultPage & "','N','1','1','1','1'," & UserID & ",'1'," & MaxIIS & "," & MaxCPU & "," & MaxBandWidth & ")"
Cn.Execute(StrSQL)
strSQL="Update T_DNS_ServerInfo Set RealSize=RealSize+" & SiteSize & ",RealUser=RealUser+1 Where ServerCode='" & ServerCode & "'"
Cn.Execute(StrSQL)
Subject="开通试用虚拟主机成功! --" & Opt_System_CompanyName
MailFile = "../../../Include/MailTemplate/opentest.txt"
Send_Email Email,Subject,MailFile,"$注册人$",UserName,"$主机名$",HostName,"$系统绑定三级域名$",FtpAccount & ServerDomain,"$密码$",FtpPassword,"$试用期$",HowLong,"$开通日期$",strBeginDate,"$到期日期$",strEndDate,"$用户名$",FtpAccount,"$默认文档$",DefaultPage,"","","","","",""
%>
恭喜, 试用虚拟主机开通成功! 点击<a href="../../vhost/ViewVHostDetail.asp?ID=<%=VHID%>" class="a2">这里查看</a>
<%
else '购买
'------------------------------------------------------------------------------------------------------------------------
if BuyYear="" or (not IsNumeric(BuyYear)) then
Response.Write "<br><br><br><p align='center' class='titletext'>请输入购买的年限!"
Call PrintPageBottom
Response.End
end if
HowLong=Cint(BuyYear)*Cint(ProdYear)
BeginDate=Now()
EndDate=DateAdd("yyyy",HowLong,BeginDate)
strBeginDate=FormatDate(BeginDate)
strEndDate=FormatDate(EndDate)
Set Rs = Server.CreateObject("ADODB.Recordset")
strSQL="Select HaveMoney+OverMoney as HaveMoney, LevelCode, UserName, EMail from T_DNS_UserInfo Where UserID=" & UserID
Rs.open strSQL,Cn
if Rs.eof then
Rs.Close
Response.Write "<br><br><br><p align='center' class='titletext'>用户错误,无法购买!"
Call PrintPageBottom
Response.End
else
UserLevel=Rs("LevelCode")
HaveMoney=CCur(Rs("HaveMoney"))
UserName=Rs("UserName")
EMail=Rs("EMail")
end if
Rs.Close
strSQL="Select ProdPrice from T_DNS_ProdPrice Where ProdCode='" & ProdCode & "' and LevelCode='" & UserLevel & "' and ProdYear='" & ProdYear & "'"
Rs.open strSQL,Cn
if Rs.eof then
Rs.Close
Response.Write "<br><br><br><p align='center' class='titletext'>错误,无法购买!"
Call PrintPageBottom
Response.End
else
ProdPrice=Rs("ProdPrice")
HowMuch=CInt(HowLong)*CCur(ProdPrice)
end if
Rs.Close
Set Rs=Nothing
if HaveMoney<HowMuch then
Response.Write "<br><br><br><p align='center' class='titletext'>对不起,您的帐户余额不足,请先给您的帐户充值!"
Call PrintPageBottom
Response.End
end if
strSQL="exec SP_CreateVHost " & +_
"'" & Session("UserID") & "'," & +_
"'" & "查询" & "'," & +_
"'" & Request.ServerVariables("REMOTE_ADDR") & "'," & +_
"'" & ProdCode & "'"
Set Rs= Cn.Execute(strSQL)
%>
<br><br><br>
<p align="center" class="titletext">
<%
if Rs("result")<>0 then
Rs.Close
Response.Write Rs("msg")
Call PrintPageBottom
Response.End
end if
ServerCode=Rs("ServerCode")
ServerIP=Rs("ServerIP")
SiteSize=Rs("SiteSize")
ServerType=Rs("ProdMap")
ServerDomain=Rs("ServerDomain")
BPCode=Rs("BPCode")
MaxSecDN=Rs("ThiNB")
ProdName=Rs("ProdName")
ServerPubIP=Rs("ServerPubIP")
MaxIIS=RS("MaxIIS")
MaxCPU=RS("MaxCPU")
MaxBandWidth=RS("MaxBandWidth")
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -