IBM Support

IBM i上http server实用技巧之一:访问IBM i多文件系统

Technical Blog Post


Abstract

IBM i上http server实用技巧之一:访问IBM i多文件系统

Body

 

IBM HTTP Server for iIBM i文件系统关系如下图

1 HTTP Server通过Integrated File System Interface访问IBM i的常用文件系统

图像 图一

配置HTTP Server访问不同文件系统下的应用

IBM HTTP Server for i配置文件的缺省路径和文件名是/www/yourservername/conf/httpd.conf

IBM HTTP Server for i提供2种配置文件修改方式:

通过IBM Web Administration for i页面访问

打开浏览器,访问http://hostname:2001/HTTPAdmin

点击Manage/HTTP Servers/Edit Configuration File

2 IBM Web Administration for i访问界面

 图像 图二
通过GreenScreen
  1. Wrklnk '/www/yourservername/conf/httpd.conf'

  2. 2==>edit function, 编辑conf file

3 GreenScreen访问界面

图像

访问根文件系统

通过HTTP Server,用户可以以web方式访问IBM i根文件系统下的资源,包含DOSwindows文件系统的文件和目录。通过类似UNIX系统的层级结构来访问。

详细步骤

1. IBM i上创建资源目录htmlcrtdir '/html'

2. 将要访问的资源文件(e.g test.html)拷贝到新创建的资源目录下。

3. 在配置文件里增加对该目录下文档的访问许可,并为该目录增加别名访问。

Alias /html /html

<Directory /html>

Order Allow,Deny

Allow From all

</Directory>

4. 通过URL访问该Web资源:http://hostname:port/html/test.html


访问开发文件系统

通过HTTP Server,用户可以以web方式访问IBM i开发文件系统下的资源,包含基于UNIX的文件和目录。

详细步骤

1. IBM iQOpenSys目录下创建资源目录html

crtdir '/QopenSys/html'

2. 将要访问的资源文件(e.g test.html)拷贝到新创建的资源目录下。

3. 在配置文件里增加对该目录下文档的访问许可,并为该目录增加别名访问。

Alias /html /QOpenSys/html

<Directory /QOpenSys/html>

Order Allow,Deny

Allow From all

</Directory>

4. 通过URL访问该Web资源:http://hostname:port/html/test.html

访问库(QSYS.LIB)文件系统

通过HTTP Server,用户可以以web方式访问IBM i库结构中的对象,包含IBM i的库和其他类型的IBM i的对象,可以利用层级结构访问这些对象,并支持对源物理文件/成员和用户空间(User Space)等数据对象的操作。

详细步骤:

1. IBM i上创建lib HTTP
crtlib http

2. 将要访问的CGI(e.g test.pgm)MBR等文件放到该lib里。

3. 在配置文件里增加对该lib下程序的访问许可,并为该目录增加别名访问。

ScriptAlias /HTTP/ /qsys.lib/HTTP.lib/

<Directory /QSYS.LIB/HTTP.LIB>

order allow,deny

allow from all

Options +ExecCGI

</Directory>

4. 通过URL访问该Web资源:http://hostname:port/HTTP/test.pgm

访问文档库服务(QDLS)文件系统

通过HTTP Server,用户可以以web方式访问IBM i文档库服务文件系统下的资源(支持从S/36系统上继承到IBM i系统上来的文件夹结构),可直接访问文件夹和文档,支持以流文件存储的IBM i上的文件夹,文档库对象的数据。

详细步骤

1. 通过绿屏,使用命令“ADDDIRE”增加用户对QDLS文件系统的访问权限。

2. IBM iQDLS目录下创建资源目录html
crtdir '/QDLS/html'

3. 将要访问的资源文件(e.g test.html)拷贝到新创建的资源目录下。

4. 在配置文件里增加对该目录下文档的访问许可,并为该目录增加别名访问。

Alias /html /QDLS/HTML

<Directory /QDLS/HTML>

Order Allow,Deny

Allow From all

</Directory>

5. 通过URL访问:http://hostname:port/html/test.html

访问IBM i文件服务器(QFileSvr.400)文件系统

通过HTTP Server,用户可以以web方式访问IBM i文件服务器(QFileSvr.400)文件系统上的资源,支持对远程IBM i服务器上的文件系统下资源的访问。

详细步骤

1. IBM i HTTP1QFileSvr.400目录下,创建目录,该目录为要访问的远程IBM ihost name HTTP2

crtdir '/QfileSvr.400/HTTP2'

2. 在远程IBM i HTTP2上创建文件夹html,并将要访问的资源文件(e.g test.html)拷贝到新创建的资源目录下。

3. 在配置文件里增加配置ServerUserid username,和对该目录下文档的访问许可,并为该目录增加别名访问。

ServerUserid username //2IBM i上有相同的用户名和密码

Alias /html /QFileSvr.400/HTTP2/html

<Directory /QFileSvr.400/HTTP2 /html>

Order Allow,Deny

Allow From all

</Directory>

4. 通过URL访问:http://hostname:port/html/test.html

访问用户自定义文件系统

通过HTTP Server,用户可以以web方式访问存放于辅助存储池(ASP)上的IBM i用户自定义文件系统(UDFS)下的资源,包含用户自己定义和自己管理的文件系统。

详细步骤

1. 通过iNavIASP设备上创建一个UDFS文件系统.

2. 在绿屏下通过命令把该UDFS文件系统MountIBM i操作系统。

MOUNT TYPE(*UDFS) MFS('/dev/iaspname/udfsname.udfs') TOVRDIR('/mnt/udfsname')

3. 在设备IASP上创建文件夹

"MD '/mnt/udfsname1/html'"

4. 将文件(test.html)拷贝到该资源目录下。

5. 在配置文件里增加对该目录下文档的访问许可,并为该目录增加别名访问。

Alias /html /mnt/udfsname/html

<Directory /mnt/udfsname/html>

Order Allow,Deny

Allow From all

</Directory>

7. 通过URL访问:http://hostname:port/html/test.html

访问网络(NFS)文件系统

通过HTTP ServerIBM i用户可以以web方式访问远程网络文件系统的数据和对象。

详细步骤

1. 通过绿屏,使用命令“ADDDIRE”增加用户对NFS文件系统的访问权限。

2. 互相通讯的2IBM i系统(http01http02)都需要安装NFS server

3. 启动NFS serverSTRNFSSVR

4. http01上修改文件export file/ETC/EXPORTS如下:

/html access=http02

#HOSTOPT

HostName=http01,

PathNameCodePage=367,

DataFileCodePage=850,

NoWaitForWrites

5. http01上运行如下命令通知http02可以通过NFS server访问共享信息

CHGNFSEXP DIR('/html')

6. http02上创建目录/html,然后在http02上创建到http01的映射。

MOUNT TYPE(*NFS) MFS('http01:/html') MNTOVRDIR('/html')

7. http02上可以通过wrklnk /html访问http01上的共享信息。

8. 在配置文件里增加对该目录下文档的访问许可,并为该目录增加别名访问。

Alias /html /html

<Directory /html>

Order Allow,Deny

Allow From all

</Directory>

9. 通过URL访问:http://hostname:port/html/test.html

访问Windows NT服务器(QNTC)文件系统

通过HTTP ServerIBM i用户可以以web方式访问远程运行的Windows NY/2000/2003的文件,让IBM i上的应用与Windows客户端使用相同的数据。

详细步骤

1. PC

IBM i NetServerwindow NT/2000/2003在同一个域里并已经运行。

创建一个和IBM i相同的账户和密码,将需要访问的页面(test.html)放到将共享的文件夹HTML

2. IBM i

通过cfgtcp option10增加windows system的名字和ip地址到host table

/QNTC下创建目录,该目录为要访问的windows systehost name WinHTTPcrtdir '/QNTC/WinHTTP'

3. 在配置文件里增加对该目录下文档的访问许可,并为该目录增加别名访问。

ServerUserid username

Alias /QNTC /QNTC/WinHTTP/HTML //WinHTTPWindowsNT name / HTMLShared folder on winNT

<Directory /QNTC/WinHTTP /HTML

Order Allow,Deny

Allow From all

</Directory>

4. 通过URL访问:http://hostname:port/QNTC/test.html


总结

通过配置IBM HTTP server可以轻松实现对IBM i上不同文件系统下资源的WEB访问。

参考资源 (resources)


作者:徐乐 

[{"Business Unit":{"code":"BU009","label":"Systems - Cognitive"}, "Product":{"code":"SWG60","label":"IBM i"},"Component":"","Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"","Edition":""}]

UID

ibm11145890