日记 [2007年05月05日]linux平台下WEB服务的应用
时间:2009-03-23 来源:sjhf
windows下web服务通常使用wink系列自带的IIS,添加删除程序里面可以添加IIS组件,然后启动服务,就可以使用了,win平台下可以使用html和asp两种格式。 linux上面跑网站通常都是用apache,如果只是静态的网站,只需要安装apache,安装很简单。源码编译或者rpm包,然后启动apache,编辑httpd.conf,然后把静态html文件放在apache配置文件指定的web发布目录下就可以了。 如果是动态网站,linux一般都是php和cgi程序。在这种情况下,就需要整合PHP与apache,让php格式的动态页面可以在浏览器上正确显示(不整合,用浏览器访问php文件只能得到php文件的源代码) 如果是jsp程序,通常就用tomcat来支持,但是tomcat对静态网页的效率不如apache,所以通常将tomcat和apache整合起来,就如同php与apache的整合一样。 一般动态程序都需要数据库的支持,linux下用mysql的比较多。在以上软件安装的时候,要指定关于数据库的编译选项。 php和apache的整合通常采用动态模块方式。首先安装apache,为了功能上的定义方便,采用源码方式安装。./configure 可以增加很多选项,详细情况可以查手册,加入以下参数--enable-moudle=so (用来指定系统允许使用的功能扩展的类型,这里指定为so类型)--enable-so用来指定允许DSO(动态共享对像) 然后安装php,一般加上如下参数--with-apxs2=/usr/local/apache/bin/apxs 然后把php.ini拷贝到/etc/(此路径根据发行版决定)目录下。编辑php.ini设置register_globals = On 编辑httpd.conf在配置文件中添加如下: AddType application/x-httpd-php .php .php3 .php4 .php5 增加php文件类型识别 DirectoryIndex index.html index.php index.php3 index.htm 增加首页文件识别 然后重启apache服务,一般用一个phpinfo.php放到web发布目录下测试一下php是否正常整合到apache中(如果能在浏览器中显示出服务器配置说明php已经能正常工作) phpinfo.php文件内容
cgi可执行脚本功能,编辑httpd.conf #AddHandler cgi-script .cgi,去掉#打开CGI脚本服务 cgi脚本一般放在一个单独的目录cgi-bin,使用时需要注意权限问题,避免产生漏洞。 tomcat的整合,tomcat需要JDK的支持,首先安装JDK,一般是一个bin文件,直接执行即可。 然后设置环境变量 设置环境变量: export JAVA_HOME=/jdk export PATH=$PATH:$JAVA_HOME/bin export CLASSPATH=$JAVA_HOME/lib 然后执行startup.sh看看tomcat能否正常启动。 在浏览器中http:ip:8080 可以看到猫头:)成功了。 接下来是整合了,tomcat和apache整合是通过connectors来实现的。只需要安装这个软件就可以了(jakarta-tomcat-connectors-jk2-src-current.tar.gz) ./configure --with-apxs2=/usr/local/apache2/bin/apxs make cd ../build/jk2/apache2/ /usr/local/apache2/bin/apxs -n jk2 -i mod_jk2.so 上条命令是将mod_jk2.so添加到apache2的modules中. 上面就完成了Tomcat和Connectors的安装.接下来进行与Apache的整合. 4.Tomcat与Apache的整合 cd /usr/local/apache2/conf vi httpd.conf 编辑配置文件在其中加入这个模块,保存退出 LoadModule jk2_module modules/mod_jk2.so 然后在这个目录新建一文件workers2.properties(也可以从 vi workers2.properties 文件内容如下: # Example socket channel, override port and host [channel.socket:localhost:8009] port=8009 host=127.0.0.1 # define the worker [ajp13:localhost:8009] channel=channel.socket:localhost:8009 # Uri mapping [uri:/jsp-examples/*] worker=ajp13:localhost:8009 重启Apache和Tomcat后可以查看整合后的效果. /usr/local/tomcat/bin/shutdown.sh /usr/local/tomcat/bin/startup.sh /usr/local/apache2/bin/apachectl restart |
相关阅读 更多 +