$ 入门参考书 $
<PHP >
大道PHP:LAMP+Zend+开源框架整合开发与实战
PHP和MySql Web开发(第三版)
<Perl >
Learning Perl /《Perl语言入门》第五版 #基本知识
Advanced Perl Programming /《高级Perl编程》 #补充
CGI Programming with Perl, Second Edition /《CGI编程--使用perl》 #网页相关
Programming the Perl DBI /《Perl DBI编程》 # 数据库相关
Perl.Template.Toolkit.chm #Catalyst / TT 框架
<Mysql >
MySQL入门很简单
<Linux >
鸟哥的Linux私房菜 (第三版) 基础学习篇
$ 环境安装&配置 $
<平台 >
XAMPP 1.7.4(win/linux/Mac OS,集成Apache+MySQL+PHP+PERL,一键安装)
mysql-query-browser-1.1.20-win.msi 、
MySQL
ActivePerl-5.8.7.813-MSWin32-x86-148120.msi
<模块 >
(命令区分大小写)
进入cmd
>ppm
& 数据库相关
ppm >install DBI ppm >install DBD-mysql ppm >install Data-ShowTable
& CGI相关
ppm >install http://theoryx5.uwinnipeg.ca/ppms/mod_perl.ppd #mod_perl,一般xampp带有,无需安装 ppm >install Date-Calc ppm >install HTML-Template
配置 >
& Apache
对于500error的处理方法:
~\xampp\apache\conf\httpd.conf # 配置文件 { #添加CGI支持 ScriptAlias /cgi/ "C:/xampp/cgi-bin/" # 设定别名,/cgi/可以任意设定 <Directory "C:/xampp/cgi-bin"> AllowOverride All # Options All # AddHandler cgi-script .cgi .pl .asp LoadFile "C:\xampp\perl\bin\perl510.dll" # 在LoadModule行的最后添加这两句 LoadModule perl_module modules/mod_perl.so # xampp默认不加载mod_perl }
centOS下:
[root@weblily cgi-bin]# cat /etc/httpd/conf/httpd.conf|grep -i mod_perl [root@weblily cgi-bin]# #似乎从2.0以后,apache习惯把这些php perl的支持都以incl? 形式支持进来的。所以上一 #步grep 不到,可能在incl?里出现。 [root@weblily cgi-bin]# ls /etc/httpd/modules/mod_perl.so ls: /etc/httpd/modules/mod_perl.so: 没有那个文件或目录 yum install mod_perl #mod_perl安装成功~ [root@weblily cgi-bin]# ls /etc/httpd/modules/mod_perl.so /etc/httpd/modules/mod_perl.so
这个是vhost形式安装,所以还要在虚拟机上进行设置安装。
1. 加入cgi directory,让vhost虚拟域支持perl.
</Directory> ScriptAlias /cgi-bin/ "/opt/cgi-bin/" <Directory "/opt/cgi-bin"> AllowOverride None Options None Order allow,deny Allow from all </Directory>
2. vi httpd.conf
添加一句: AddHandler cgi-script .pl
3. chmod 0777 -R /opt/cgi-bin/ #给权限
=================to be continued====================
关于头文件
如果是text/html ,按html输出
print "Content-type: text/html; charset=iso-8859-1\n\n"; print "<html>\n"; print "<head>\n"; print "<title>test</title>\n"; print "</head>\n"; print "<body>\n"; print "<p>Printsomething: </p> \n"; print "</body>\n"; print "</html>\n";
输出为
Printsomething:
如果是text/html ,按print中内容输出
print "Content-type: text/plain charset=iso-8859-1\n\n"; print "<html>\n"; print "<head>\n"; print "<title>test</title>\n"; print "</head>\n"; print "<body>\n"; print "<p>Printsomething: </p> \n"; print "</body>\n"; print "</html>\n";
输出为
<html> <head> <title>test</title> </head> <body> <p>Printsomething: </p> </body> </html>