【问题标题】:can't access to website in my server无法访问我服务器中的网站
【发布时间】:2015-10-27 10:23:55
【问题描述】:

我在一个平台的本地主机上工作。 流程是:

  1. LOGIN.ASP 插入我的登录信息(用户名 + 密码)

在 login.asp 我有这个

If Session("isAdmin") Then
    Response.Redirect "../default.asp"
Else
    Response.Redirect "../index.asp"
End If

虽然在服务器上给了我错误

处理 URL 时服务器发生错误。
请联系系统管理员。 如果您是系统管理员,请单击此处了解有关此错误的更多信息。

网址是/common/_loginme.asp 在这个页面中的代码是:

<%    
Dim username, password
username = Request.Form("username")
password = Request.Form("password")
If username = "" Then Response.Redirect "login.asp?m=Username é obrigatório."
If password = "" Then Response.Redirect "login.asp?m=Password é obrigatório."
%>
<!-- #include file="_db.asp" -->
<%
sqlLogin = "SELECT TOP 1 id, roleId, name FROM Users WHERE isActive = True AND username = '" & CleanStr(username) & "' AND password = '" & CleanStr(password) & "'"
Set RSlogin = Conn.Execute(sqlLogin)
If RSlogin.EOF Then
    Rslogin.Close
    Closeconn
    Response.Redirect "../login.asp?m=Username ou Password incorretas."
Else
    Session("isAdmin") = RSlogin("roleId") = 1
    Session("LoginID") = RSlogin("id")
    Session("Name") = RSlogin("name")
    Rslogin.Close
    Closeconn
    If Session("isAdmin") Then
        Response.Redirect "../default.asp"
    Else
        Response.Redirect "../index.asp"
    End If
End If
RSlogin.Close
Closeconn
%>
<%
Function CleanStr(s)    
    s = Replace(s,"'","")
    s = Replace(s,"<","")
    s = Replace(s,">","")
    s = Replace(s,";","")
    CleanStr = s
End Function
%>

为什么在本地主机我运行良好,但服务器却不行?

还有一个 sn-p,web.config

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <system.webServer>
        <defaultDocument>
            <files>
                <remove value="Default.asp" />
                <add value="Login.asp" />
            </files>
        </defaultDocument>

    </system.webServer>
</configuration>

【问题讨论】:

    标签: login vbscript asp-classic web-config


    【解决方案1】:

    您描述的错误是标准的 ASP 错误消息,因此用户不会在生产服务器上获得有关错误的信息。

    虽然这是所需的行为,但您必须启用错误输出,以便查看发生了什么问题。

    在服务器上的 IIS 设置中,选择 ASP,打开“调试属性”并启用“将错误发送到浏览器”选项。

    更多详细信息herehere

    这样,您应该可以了解更多信息,了解您的生产设置中真正失败的原因。

    【讨论】:

    • 错误是 ADODB.Connection error '800a0e7a' Provider cannot be found. It may not be properly installed. /Question/common/_db.asp, line 11 和 db.asp &lt;% Dim Conn Set Conn = Server.CreateObject("ADODB.Connection") Dim ConnectionString %&gt; &lt;!--#include file ="DB.INC" --&gt; &lt;% ConnectionString = "PROVIDER=MICROSOFT.JET.OLEDB.4.0;DATA SOURCE=" &amp; dbPath Conn.Open ConnectionString Sub CloseConn Conn.Close Set Conn = Nothing End Sub %&gt; 和 db.inc &lt;% Dim dbPath : dbPath = "\\server.domain\db\db.mdb" %&gt;
    • 好吧,看来您应该安装数据库提供程序驱动程序了。
    • 应该安装MICROSOFT.JET.OLEDB.4.0吧? ADODB.Connection 只是“连接”吧? (我有点菜鸟/新人)
    • 没错。 ADODB.Connection 是访问数据库的包装器。在 JET 安装方面我帮不了你太多,因为我只使用 SQL 服务器连接。
    猜你喜欢
    • 2017-06-01
    • 2014-01-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-09-25
    • 1970-01-01
    • 2012-01-11
    • 2017-04-16
    相关资源
    最近更新 更多