WebRAD:在Web上构建数据库应用程序指南
立即解锁
发布时间: 2025-08-22 01:31:36 阅读量: 2 订阅数: 7 


WebRAD:使用Visual FoxPro构建Web数据库应用
# WebRAD:在 Web 上构建数据库应用程序指南
## 1. 开发流程概述
在开始具体操作之前,了解开发过程的运作方式以及涉及的各个部分是很有必要的,这样你就能明确前进的方向。
### 1.1 本地机器软件
本地机器需要安装常见的“盒装”软件,包括 Windows 操作系统、Web 服务器软件和 Visual FoxPro 开发版本。
### 1.2 Web Connection 项目开发环境组件
Web Connection 项目的开发环境有五个特定部分:
- **项目目录**:包含所有自定义源代码,类似于创建局域网或客户端 - 服务器应用程序时的情况。
- **Web Connection 框架和类**:无需将其复制到项目目录,项目会指向其所在的目录,就像其他 VFP 应用程序指向基类和过程库的公共目录一样。
- **Web 服务器目录镜像**:这个目录是 Web 服务器上网站所在目录的镜像。大多数网站都有大量的 HTML 页面、图形和其他文件,WC 应用程序需要能够在开发机器上正确引用这些文件。如果没有这个镜像,应用程序对这些文件的引用将会失败。
- **Web 应用程序 EXE 和数据目录**:将数据与应用程序分开是一个很好的做法,这样应用程序就不依赖数据文件与它在同一目录。对于 Web 应用程序来说,这一点更为重要,因为如果数据文件放置错误,整个世界都可能访问到你的数据。
- **Web Connection 临时文件目录**:该目录存储临时“消息”文件,用于 Web Connection ISAPI DLL(WC.DLL)和你自己的 Visual FoxPro 应用程序之间的通信。
### 1.3 Web 服务器根目录说明
“Web 服务器”这个术语有两种含义,既可以指具有 IP 地址的物理设备(如“我们的 Web 服务器位于地下室的壁橱里”),也可以指运行在机器上的软件,如 Apache 和 Internet Information Server。在本文中,“Web 服务器”指的是接收 Web 页面请求、处理这些请求并向请求者返回 HTML 页面的软件应用程序。
配置 Web 服务器软件时,需要指定一个根(或“主”)目录。IIS 的根目录默认名称是 C:\INETPUB\WWWROOT,很多人在开始时会在该子目录下为每个网站或项目创建目录。这个目录对外部世界是可见的(至少在开发机器的测试中,对 Web 浏览器是可见的)。
当在浏览器中输入“www.YourDomain.com”时,该域名对应的 Web 服务器会尝试打开该域名在 Web 服务器机器上映射目录中的默认 HTML 文件。这可能是该机器上的 C:\INETPUB\WWWROOT 目录,也可能是其下的子目录。在开发机器上工作时,也可以用“http://localhost”或“http://127.0.0.1”代替“www.YourDomain.com”。
如果请求指定了根目录下的子目录,如“www.YourDomain.com/MyApp/home.html”,Web 服务器会检查是否将“MyApp”目录定义为虚拟目录。如果是,则会按照虚拟映射指向 Web 服务器机器上指定的物理文件夹;如果没有将“MyApp”定义为虚拟目录,但 Web 根目录下有一个名为“MyApp”的物理文件夹,Web 服务器将在该物理文件夹中查找。找到“MyApp”目录后,它会查找名为“home.html”的文件。如果找到,该文件将返回给浏览器;如果未找到,则返回“Page Not Found”等错误。
### 1.4 Web 服务器数据目录说明
将 Web 应用程序的 EXE 和数据分开存储是很重要的。将数据与 Web 应用程序分开,可以保护数据不被外界轻易访问,同时也便于在需要时迁移或更改数据存储,例如迁移到 SQL Server 或其他不在 Web 服务器上的后端。
同样,EXE 也应放在外部世界不可见的目录结构之外,这样其他人只能通过你设置的机制访问 EXE。在 Web 应用程序中,许多开发人员将 EXE 和数据放在同一目录结构中,可能是在特定的子目录中。但需要注意的是,EXE 并不需要也不应该要求数据与它在同一目录。
## 2. Windows 设置
### 2.1 操作系统选择
建议使用 Windows NT Workstation 4.0(SP 5 或更高版本)或 Windows 2000 Professional 进行开发。虽然可以使用 Windows 9X 进行开发,但它更容易崩溃,而且可用的工具(如 Web 服务器)不如 NT/2000 强大。
### 2.2 账户设置
开发机器上应同时设置管理员账户和用户账户。安装 Web 服务器等软件时需要管理员账户,但日常工作中应使用不同的账户。管理员账户拥有“超级”权限,如果以管理员身份进行开发和测试,可能会产生功能正常的错觉。
如果经常在管理员账户和其他用户账户之间切换,可以考虑更改管理员账户的配色方案、背景和其他用户界面元素,以提醒自己不是以普通用户身份登录。此外,如果办公室其他人可以访问你的机器,不要以管理员身份登录,以免将这种权限暴露给其他用户。以普通用户身份登录时,搞砸事情的风险相对较小。
### 2.3 机器配置
建议至少有两个可用的驱动器,如 C 盘和 D 盘。最好将 C 盘仅用于 Windows 和 Windows 盒装应用程序,如 Visual Studio;使用另一个驱动器(如 D 盘)存储应用程序、测试数据等。同时,将通用代码、框架代码(包括 Web Connection)等也放在第二个驱动器上。
这样做的好处是,当需要重新格式化 C 盘时,自己的程序和数据是安全的。此外,如果决定重新配置网络,例如将开发材料移动到另一个驱动器(如网络服务器上),也可以轻松完成。不过,这不是绝对要求,只是个人建议。
### 2.4 驱动器使用建议
- **C 盘**:安装 Windows、Web 服务器软件(个人 Web 服务器或 Internet Information Server)和 Visual FoxPro。
- **D 盘(假设开发驱动器为 E 盘)**:设置以下目录结构:
- **Web Connection 框架和相关文件目录**:如果维护不同版本的 Web Connection 构建的应用程序,可能需要为每个版本设置单独的目录。
- **每个客户的单独目录**:每个客户目录下为每个具体项目设置子目录(如果没有多个客户,例如企业开发者或从事垂直市场产品开发,可以省略这一层)。
- **自己的通用代码目录**。
- **每个项目的数据目录**。
- **每个项目的网站目录**。
- **Web Connection 临时消息文件目录**:该目录下为每个具体项目设置单独的子目录。
以下是最终的目录结构示例:
```plaintext
E:
\WCONNECT
(Web Connection framework and classes)
\CUST_ONE
\PROJ_ONE
PROJ_1.PJX
PROJ_1.PJT
PROJ_1.EXE
\SOURCE
\PROJ_TWO
PROJ_2.PJX
PROJ_2.PJT
PROJ_2.EXE
\SOURCE
\CUST_TWO
(etc.)
\INETPUB\WWWROOT
\SITE_ONE
DEFAULT.HTM
(other static pages and files)
\SCRIPTS
WC.DLL
WC.INI
\IMAGES
\ADMIN
ADMIN.ASP
\SITE_TWO
\WSDATA
\PROJ_1
PROJ_1.EXE
PROJ_1.INI
PROJ1_TABLE1.DBF
PROJ1_TABLE2.DBF (etc.)
\PROJ_2
\WC_MSG
\PROJ_1
\PROJ_2
```
需要注意的是,应将 PROJ_1.EXE 的工作副本放在 Web 不可见的子目录中,数据也应放在网站目录结构无法访问的目录中,以确保数据安全。
## 3. 安装 Web 服务器
### 3.1 服务器选择建议
在 NT 或 2000 开发机器上可以安装多种不同的 Web 服务器应用程序,建议尽可能模拟生产环境。如果只是随意尝试,可以使用“玩具”Web 服务器,但这可能会在以后带来更多工作。
如果使用 NT Workstation,可以安装个人 Web 服务器(PWS);如果使用 Windows 2000 Professional,可以安装 PWS 或 Internet Information Server(IIS),建议使用 IIS。
### 3.2 在 NT4 上安装 PWS
- **找到安装文件**:PWS 位于 NT 的 Option Pack 中,将 Option Pack CD 放入 CD 驱动器,按照向导进行安装。
- **自定义安装**:如果选择“自定义”选项,可以选择要从 Option Pack 安装的组件。
- **注意事项**:安装过程中,如果按照建议将开发文件放在 D 盘,确保在 D 盘创建一个名为 InetPub 的目录,并在为 PWS 指向 InetPub 时指向该目录。同时,要安装 Microsoft Management Console(MMC),因为它是配置 PWS 的工具。
安装完成后,可以通过以下两种方式管理个人 Web 服务器:
- **使用 Microsoft Management Console 管理**:通过“程序 | Windows NT 4.0 Option Pack”菜单链进入 Internet Service Manager,运行后会出现 Microsoft Management Console 对话框。这是一个很好的工具,因为它也是生产服务器上运行的 Microsoft IIS Web 服务器的界面。
- **使用 Personal Web Manager 管理**:可以通过选择“Personal Web Manger”菜单选项或点击任务栏右侧第二个图标打开 Personal Web Manager 对话框。点击底部的“高级”按钮可以打开“高级选项”对话框,在该对话框中可以配置虚拟目录等信息。
### 3.3 在 Windows 2000 上安装 IIS
- **打开控制面板**:从“开始 | 设置”菜单中打开控制面板,双击“添加/删除程序”小程序。
- **选择组件**:点击“添加/删除 Windows 组件”,勾选“Internet Information Service (IIS)”复选框,然后点击“下一步”并按照提示操作。
- **配置 IIS**:安装完成后,可以通过“程序 | 管理工具 | 计算机管理”菜单或在“管理工具”小程序中选择“计算机管理”图标来更改设置。右键点击“默认 Web 站点”节点,选择“属性”打开“默认 Web 站点属性”对话框,在“主目录”选项卡中指定 Web 服务器目录,如 E:\INETPUB\WWWROOT。
- **设置默认文档**:使用“文档”选项卡设置默认文档,同时可能需要将“应用程序保护”组合框设置为“低(IIS 进程)”,将“执行权限”组合框设置为“脚本和可执行文件”。如果只运行脚本映射,可以将“执行权限”设置为“仅脚本”,之后如果需要可以再进行更改。
以下是整个开发环境搭建的流程图:
```mermaid
graph LR
A[准备本地机器软件] --> B[配置 Web Connection 开发环境]
B --> C1[项目目录]
B --> C2[Web Connection 框架和类]
B --> C3[Web 服务器目录镜像]
B --> C4[Web 应用程序 EXE 和数据目录]
B --> C5[Web Connection 临时文件目录]
B --> D[设置 Web 服务器根目录和数据目录]
D --> E[设置 Windows 系统]
E --> F1[选择操作系统]
E --> F2[设置账户]
E --> F3[配置机器驱动器]
F3 --> G1[C 盘软件安装]
F3 --> G2[D 盘目录结构设置]
E --> H[安装 Web 服务器]
H --> I1[选择服务器类型]
I1 --> J1[NT4 安装 PWS]
I1 --> J2[Windows 2000 安装 IIS]
J1 --> K1[管理 PWS]
J2 --> K2[管理 IIS]
```
通过以上步骤,你可以搭建一个完整的 WebRAD 开发环境,用于在 Web 上构建数据库应用程序。在搭建过程中,要特别注意数据和 EXE 的安全,避免将其暴露在外部可访问的目录结构中。同时,合理配置 Web 服务器的各项参数,确保应用程序的正常运行。
## 4. Web 服务器管理与配置细节
### 4.1 使用 Microsoft Management Console 管理 PWS
在 NT 4 上使用 Microsoft Management Console(MMC)管理个人 Web 服务器(PWS)时,有一些关键操作需要注意。运行 Internet Service Manager 后,会出现 MMC 对话框。在这个对话框中,可以看到多个节点,如默认 FTP 站点、默认 Web 站点,以及各种 Web Connection 应用程序的节点。
- **查看和设置应用程序属性**:要查看和设置特定应用程序的属性,只需右键单击该应用程序的节点,就会弹出“属性”对话框。例如,在图中可以看到自定义的 DL、OLS、DLPROC 和 RE76 等 Web Connection 应用程序的节点,以及 Web Connection 自带的 WCONNECT 和 WWTHREADS 应用程序节点。
- **虚拟目录设置**:“属性”对话框的“虚拟目录”选项卡非常重要。它允许你指向机器上的特定物理目录,并为该路径指定一个简写名称,以便在 URL 中使用。例如,虚拟名称“re76”可以指向物理子目录“re76”,该子目录位于 E:\INETPUB\WWWROOT 中。当然,虚拟名称可以根据自己的喜好进行设置,如 HERMAN、ALICE 或 MOTORHEAD 等。
- **默认文档设置**:当访问一个网站时,如果没有指定具体的 HTML 文件,如输入“www.YourSite.com”,Web 服务器需要知道返回哪个文件。通过“属性”对话框的“文档”选项卡,可以设置默认文档。这一设置在 PWS 和 IIS 中是相同的。
### 4.2 使用 Personal Web Manager 管理 PWS
除了 MMC,还可以使用 Personal Web Manager 管理 PWS。有两种方式可以打开 Personal Web Manager 对话框:一是在之前提到的菜单中选择“Personal Web Manger”选项;二是点击任务栏右侧第二个图标。
打开对话框后,左侧菜单栏有一些功能,其中前三个是面向最终用户的向导,可以先忽略。点击底部的“高级”按钮,会打开“高级选项”对话框。在这个对话框中,可以像在 IIS 中一样浏览应用程序目录,并且可以直接在该页面上确定默认文档,而无需切换到其他对话框或选项卡。
不过,要设置应用程序的主目录和映射到该物理目录的虚拟目录名称,需要点击“高级”对话框中的“编辑属性”按钮,打开“编辑目录”对话框进行设置。
### 4.3 IIS 配置细节
在 Windows 2000 上安装 IIS 后,需要进行一些关键配置。右键单击“默认 Web 站点”节点,选择“属性”打开“默认 Web 站点属性”对话框。
- **主目录设置**:在“主目录”选项卡中,指定 Web 服务器目录,如 E:\INETPUB\WWWROOT。这意味着发送到该机器 Web 服务器的请求将在该目录中查找文件。
- **默认文档设置**:使用“文档”选项卡设置默认文档,与 NT4 上的 IIS/PWS 设置方法相同。
- **应用程序保护设置**:在“主目录”选项卡中,需要将“应用程序保护”组合框设置为“低(IIS 进程)”。虽然具体原因不太明确,甚至 IIS 文档编写者也不清楚,但这是必要的设置。
- **执行权限设置**:“执行权限”组合框的设置取决于应用程序的使用方式。如果只是运行脚本映射,可以将其设置为“仅脚本”;如果要使用 Web Connection 调用(如 wc.dll?YourAppProcess),则需要将其设置为“脚本和可执行文件”。目前建议先设置为“脚本和可执行文件”,如果之后决定仅使用脚本映射,可以再进行更改。
以下是 Web 服务器管理和配置的关键设置总结表格:
| 管理方式 | 关键设置项 | 设置说明 |
| ---- | ---- | ---- |
| MMC 管理 PWS | 虚拟目录 | 指向物理目录并设置简写名称用于 URL |
| | 默认文档 | 通过“文档”选项卡设置 |
| Personal Web Manager 管理 PWS | 默认文档 | 在“高级选项”对话框中确定 |
| | 主目录和虚拟目录 | 通过“编辑目录”对话框设置 |
| IIS 配置 | 主目录 | 指定 Web 服务器目录 |
| | 默认文档 | 通过“文档”选项卡设置 |
| | 应用程序保护 | 设置为“低(IIS 进程)” |
| | 执行权限 | 根据使用情况设置为“仅脚本”或“脚本和可执行文件” |
## 5. 开发环境搭建的注意事项
### 5.1 数据和 EXE 的安全
在整个开发环境搭建过程中,数据和 EXE 的安全至关重要。要始终将数据和 EXE 放在外部世界不可见的目录结构中。例如,将 PROJ_1.EXE 的工作副本放在 Web 不可见的子目录中,将数据放在网站目录结构无法访问的目录中。如果将数据放在 INETPUB\WWWROOT 目录结构下,任何人都可以通过在浏览器中输入相应的 URL 访问到数据文件,这是非常危险的。为了提高安全性,数据可以放在同一驱动器上不在网站目录路径中的目录,甚至可以放在其他驱动器或其他机器上。
### 5.2 目录结构的一致性
建议开发机器的目录结构与生产服务器的目录结构尽量保持一致。虽然不是绝对必要,但这样可以减少后续部署和维护的工作量。在开发初期,让应用程序、网站文件和数据文件的相对位置在开发和生产环境中相同。随着经验的积累,可以尝试其他方法。
### 5.3 服务器选择与模拟生产环境
选择 Web 服务器时,要尽可能模拟生产环境。如果只是随意使用“玩具”Web 服务器,可能会在后续的开发和部署过程中遇到问题。例如,不同的 Web 服务器在性能、功能和配置上可能存在差异,使用与生产环境不同的服务器可能会导致应用程序在生产环境中出现兼容性问题。
以下是开发环境搭建注意事项的流程图:
```mermaid
graph LR
A[数据和 EXE 安全] --> B[放在不可见目录]
B --> C[避免数据暴露]
A --> D[提高安全性措施]
D --> E[放其他驱动器或机器]
F[目录结构一致性] --> G[开发与生产一致]
G --> H[减少部署维护工作量]
I[服务器选择] --> J[模拟生产环境]
J --> K[避免兼容性问题]
```
## 6. 总结
通过以上步骤和注意事项,可以成功搭建一个用于在 Web 上构建数据库应用程序的 WebRAD 开发环境。整个过程包括准备本地机器软件、配置 Web Connection 开发环境、设置 Windows 系统、安装和管理 Web 服务器等多个环节。
在搭建过程中,要特别关注数据和 EXE 的安全,合理设置 Web 服务器的各项参数,确保应用程序的正常运行。同时,遵循目录结构一致性原则,选择合适的 Web 服务器,以提高开发效率和应用程序的稳定性。
希望本文提供的详细信息和操作步骤能够帮助你顺利搭建开发环境,开启 Web 数据库应用程序的开发之旅。在实际操作过程中,如果遇到问题,可以参考上述内容进行排查和解决。
总之,搭建一个稳定、安全且高效的开发环境是成功开发 Web 数据库应用程序的基础,需要认真对待每一个环节。
0
0
复制全文
相关推荐










