zoukankan      html  css  js  c++  java
  • 每日小结(2)

    摘要

    • 在 win10 中开启 IIS 服务器并支持 .asp 文件的解析
    • 在 IIS 7 上使用 asp 连接 SQLite 数据库

    在 win10 中开启 IIS 服务器并支持 .asp 文件的解析

    系统:win10 amd64 1803

    开启 IIS 服务

    打开控制面板 => 程序与功能 => 启用或关闭 Windows 功能,找到 Internet Information Services 项:

    然后在浏览器中输入 localhost 就可以看到默认界面了。

    使 IIS 支持 .asp 文件的解析

    展开上图中的 “应用程序开发功能” 项,选中 ASP 和 ISAPI 扩展这两项:

    将 C:inetpubwwwrootindex.htm 文件重命名为 index.asp,即改为 asp 文件,即可使用 asp 的语法。

    在 IIS 中添加默认文档 index.asp

    或者在网站根目录添加一个 web.config 文件:

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

    参考

    1. https://docs.microsoft.com/en-us/iis/application-frameworks/running-classic-asp-applications-on-iis-7-and-iis-8/classic-asp-not-installed-by-default-on-iis

    在 IIS 7 上使用 asp 连接 SQLite 数据库

    这部分内容主要是解决这个问题:[Microsoft][ODBC 驱动程序管理器] 未发现数据源名称并且未指定默认驱动程序

    其实这个问题出现的原因还是因为驱动没装好。

    1. 打开 “ODBC 数据源管理器”,在开始中搜索:

    或者使用 win + R 创建任务: %windir%system32odbcad32.exe :

    1. 添加系统 DSN:

    点击 添加,选择合适的 SQLite 驱动,这里我用的是 Devart ODBC Driver for SQLite,点击 完成

    Data Source Name 这一栏可以任意填,但是 在 asp 程序中填写 connection string 时要与这里的对应

    Database 这一栏定位到 SQLite 数据库中,点击 OK,数据源就设置好了。

    1. 接下来要修改 connection string:
    ' following connection string is not valid without proper driver
    'connString = "DRIVER=SQLite3 ODBC Driver;Database=" & dbpath & ";LongNames=0;Timeout=1000;NoTXN=0;SyncPragma=NORMAL;StepAPI=0;"
    ' using Driver: Devart ODBC Driver for SQLite, following connection string works well on IIS 7, but it the database file is fixed
    ' here the driver property is not effected because we don't have a driver whose name is SQLite3 ODBC, 
    ' but Data Source property point out a valid database, so invalid driver property is coverd
    connString = "Driver=SQLite3 ODBC Driver;Data Source=" & "testdb" &"; Version=3;Legacy Format=True;" 
    
    on error resume next
    conn.Open connString
    

    注意上面的 connString 中的 Data Source 项要和上面设置 DSN 中 Data Source Name的对应。

    1. 测试服务器,可以正常读取数据库

    安装合适的驱动

    上述办法由于指定了 Data Source Name,因此,如果要更换 asp 程序所使用的数据库时会比较麻烦。
    其实有个简单的方法,直接将驱动装到服务器上,就可以正常运行了。

    SQLite ODBC 驱动的下载链接:

    装完之后再进入 ODBC 数据源 —— 系统 DSN 中进行查看数据源和相应的配置:

    总结

    可以发现这里多了个 SQLite3 DataSource 的数据源,其驱动程序为 SQLite3 ODBC Driver,并且其中配置的 DataBase Name 是留空的,其实你也应该注意到了,
    我们之前使用 ADO 连接数据库时使用的连接字符串是 connString = "DRIVER=SQLite3 ODBC Driver;Database=" & dbpath & ";LongNames=0;Timeout=1000;NoTXN=0;SyncPragma=NORMAL;StepAPI=0;"
    这里的 Driver 和安装好驱动后,系统 DSN 中的数据源驱动程序是同名的,这就说明如果数据库没有配置好,那么 asp 服务器就会报错。

    其实也可以看到,如果直接在 ODBC 数据源 程序中指定了数据源(并指定了确定的 SQLite 数据库文件),那么直接在连接字符串中写上 Data Source 属性也是可以连接到特定的数据库文件的。

  • 相关阅读:
    9.20-9.21学习内容
    轮播图案例
    一个封装函数的实现过程
    9.18-9.19学习内容
    事件捕获和事件冒泡
    9.17学习内容
    appendChild()方法遇到的问题
    9.15学习内容
    9.16学习内容
    通过端口检测远程服务器是否开启,如果没有开启开启本地替代服务脚本
  • 原文地址:https://www.cnblogs.com/brifuture/p/9650078.html
Copyright © 2011-2022 走看看