用Perl、Shell脚本基于Tomcat6开发cgi程序环境配置
来源:互联网 发布:一个矩阵的协方差矩阵 编辑:程序博客网 时间:2024/06/04 20:10
以本人tomcat-6.0.36,linux系统为例:
先切换到tomcat所在home目录,本机为"/usr/local/project/tomcat"
一、修改conf/web.xml
将CGI的serlvet配置与URL映射注释打开
<servlet> <servlet-name>cgi</servlet-name> <servlet-class>org.apache.catalina.servlets.CGIServlet</servlet-class> <init-param> <param-name>debug</param-name> <param-value>0</param-value> </init-param> <init-param> <param-name>cgiPathPrefix</param-name> <param-value>WEB-INF/cgi</param-value> </init-param> <load-on-startup>5</load-on-startup> </servlet> <servlet-mapping> <servlet-name>cgi</servlet-name> <url-pattern>/cgi-bin/*</url-pattern> </servlet-mapping>
着重说下CGI servlet初始化参数之一(init-param)
executable:CGI程序解析器,默认为perl,如果为空,可以是任何安装在操作系统环境变量的脚本解析器,或是C/C++程序
建议该参数为空,tomcat会根据脚本类型去系统环境找合适的脚本解析器,以支持各类脚本运行,像上例就没有配置该参数
二、修改conf/context.xml
<Context privileged="true">
增加了privileged="true",不然tomcat启动会报错
三、建立测试web项目
在tomcat_home下的webapps目录下创建测试项目test,建议用eclipse工具创建好该web项目基本架构,切换到webapps/test/WEB-INF目录,创建新目录cgi
该目录就是用来存放cgi程序文件用的,对应上面的servlet初始化参数cgiPathPrefix的值WEB-INF/cgi
当然你也可以把你的cgi程序放在其它目录下,相应的修改初始化参数cgiPathPrefix的值。
四、创建shell脚本
切换到WEB-INF/cgi目录,新建hello.sh,内容如下
#!/bin/bashecho -e "content-type:text/html\n\n" echo "hello world"
上面第一个echo命令中,增加了-e参数以开启反斜线转义,如果不加-e参数,可发现\n并没有被当做换行符,只是作为普通字符输出
五、创建perl脚本
同样在cgi目录下,创建hello.pl,内容如下
#!/usr/bin/perlprint "Content-Type: text/html\n\n";print "hello world";
在浏览器访问http://localhost/test/cgi-bin/hello.pl
http://localhost/test/cgi-bin/hello.sh可看见浏览器正常输出hello world
另说明下:
perl脚本也可以在windows上开发的,但如果最终服务器是linux的话,建议还是在linux上写perl脚本。毕竟windows上和linux下的perl脚本还是有差异的,比如路径分隔符,windows下
的是\和/,而LINUX下的是/,还有其它差异吧,本人也没测过,希望有人在后面补充,我再加上去
- 用Perl、Shell脚本基于Tomcat6开发cgi程序环境配置
- C、Shell、Perl基于Tomcat开发CGI程序环境配置
- Apache Web 服务器配置CGI程序,执行Python、Perl脚本
- CGI脚本服务器环境配置
- 最近在配置perl的cgi程序
- 最近在配置perl的cgi程序
- 配置Apache2.x 支持shell脚本和Python编写CGI程序+测试程序
- Apache 配置CGI脚本操作数据库之Perl操作
- Python ----脚本CGI、特点、应用、开发环境
- Python ----脚本CGI、特点、应用、开发环境
- perl的cgi程序
- Tomcat 配置CGI perl
- shell写cgi脚本
- Perl - Windows开发环境配置.
- 配置perl开发环境(windows)
- 配置nginx 运行CGI(Perl-cgi)
- 教你用shell写CGI程序
- CGI程序学习(2)-CGI执行Shell脚本后无法在浏览器正常显示问题
- Android滑动菜单特效实现,侧滑效果,史上最简单的侧滑实现
- java泛型的使用
- OpenCV N0.3
- LoadRunner做基于http协议的接口测试
- ios 自定义UIAlertView
- 用Perl、Shell脚本基于Tomcat6开发cgi程序环境配置
- git学习--repo批量创建远端仓库----建立自己的android代码仓库
- IOS8 点击UIScollView上的按钮时无法滑动的解决方法
- 离线安装CDH 5
- Android动画之Interpolator和AnimationSet(三)
- 编辑框工具类 类名称:EditText_U
- 认识云计算
- Codeforces Round #222 (Div. 2)---A. Playing with Dice
- * 类描述:字符串工具类 类名称:String_U