本站首页    管理页面    写新日志    退出


天堂之光 人间希望

你我共同品味

JAVA的浓香.

Linux的清芬.

«September 2025»
123456
78910111213
14151617181920
21222324252627
282930


我的分类(专题)

日志更新

最新评论

留言板

链接

联系我

msn:zhanglincon@hotmail.com


Blog信息
blog名称:
日志总数:99
评论数量:281
留言数量:4
访问次数:809939
建立时间:2005年11月17日




[linux]linux AS4下安装APACHE+MYSQL+PHP+Zend Optimizer+TOMCAT+phpMyAdmin
原创空间,  软件技术

zhanglincon 发表于 2006/11/2 23:30:30

  经历过无数次失败,最终都能取得成功,现在将经验心得记录如下:下面介绍软件版本:Apache: httpd-2.0.59.tar.gzwget http://apache.justdn.org/httpd/httpd-2.0.59.tar.gzMysql: mysql-max-5.0.15-linux-i686.tar.gzwget wget http://dev.mysql.com/get/Downloads/MySQL-5.0/mysql-standard-5.0.15-linux-i686.tar.gz/from/http://mysql.oss.eznetsols.org/PHP: php-5.0.5.tar.gzwget http://museum.php.net/php5/php-5.0.5.tar.gzZend Optimizer: ZendOptimizer-3.0.1-linux-glibc21-i386.tar.gz Tomcat:jakarta-tomcat-5.0.30.tar.gzwget http://apache.justdn.org/tomcat/tomcat-5/v5.0.30/bin/jakarta-tomcat-5.0.30.tar.gzTomcat-Connector: jakarta-tomcat-connectors-jk2-src-current.tar.gzwget http://apache.justdn.org/tomcat/tomcat-connectors/jk2/jakarta-tomcat-connectors-jk2-src-current.tar.gzjdk:jdk-1_5_0_09-linux-i586.bin到http://java.sun.com 下载phpMyAdmin: phpMyAdmin-2.9.0.2-all-languages.tar.gz 第一步:安装apache先检查系统中是否有apache如果有强制删除#rpm -q apache#rpm -q httpd这两个命令中如果有一个显示安装了apache那么用下面的命令删除,删除前确定httpd服务没有启动# rpm -e httpdxxxxxxx --nodeps注:当前目录为/usr/local ,目录下有httpd-2.0.59.tar.gz, php-5.0.5.tar.gz 等二进制源码包#号代表为root 根权限,#后是输入的一条命令 执行下列命令解压源码包# tar -zxf httpd-2.0.59.tar.gz进入安装目录# cd httpd-2.0.59配置apache安装信息# ./configure --prefix=/usr/local/apache --enable-modules=so --enable-rewrite=shared执行make安装# make; make install安装完后# vi /usr/local/apache/conf/httpd.conf找到 prefork.c 下的MaxClients 150改为ServerLimit 2000MaxClients 1000apache默认工作在prefork.c模式下,并发进程为150,超过后就无法访问,150是远远不够的,所以这里按自己网站的需求改, 如1000由于apache默认最大并发进程是 256 所以要先设置 ServerLimit 2000 将服务器可设的最大并发数设为2000, 然后再设置最大并发数 MaxClients 1000 找到 #ServerName www.example.com:80 在其下设置 ServerName 如下ServerName www.mysite.com基中 www.mysite.com 为你网站名,也可用IP代替找到 DocumentRoot "/usr/local/apache/htdocs"设置你的 WEB 服务器的根目录 如DocumentRoot "/myweb"找到 DirectoryIndex index.html index.html.var 改为DirectoryIndex index.html index.php index.htm找到 ForceLanguagePriority Prefer Fallback 在其下加上AddDefaultCharset gb2312改完后保存(vi 的用法请查 Linux vi 命令)用下面命令启动WEB服务器# /usr/local/apache/bin/apachectl start查看自己的站点是否正常 http://www.mysite.com 也可用IP用 # /usr/local/apache/bin/apachectl stop 可停止服务 在httpd.conf建立虚拟主机:<VirtualHost *>    serverAdmin zhanglincon@sina.com    DocumentRoot /home/kayou/forum    ServerName www.xxx.com    ErrorLog /usr/local/apache/logs/error_log    CustomLog /usr/local/apache/logs/access_log combined    DirectoryIndex index.php index.html index.htm index.jsp    UseCanonicalName Off    HostnameLookups Off</VirtualHost> 安装MYSQL先检查系统中是否有mysql如果有强制删除#rpm -q mysql#rpm -q mysqld这两个命令中如果有一个显示安装了mysql那么用下面的命令删除# rpm -e mysql-version.PHELxx perl-DBD-MySQL mysql-devel --nodeps然后就可以安装了# tar -zxf mysql-max-5.0.15-linux-i686.tar.gz# cp -r mysql-max-5.0.15-linux-i686 /usr/local/mysql# vi /usr/local/mysql/support-files/my-medium.cnf在后面加上max_connections = 1000log-slow-querieslong_query_time = 5注 max_connections 为允许的最大连接数log-slow-queries 打开低速查询日志long_query_time 低速查询的秒数(运行一句sql达到此时间记录在日志里)然后COPY 它为 /etc/my.cnf 文件 设置max_connections 设置办法是在my.cnf文件中,添加下面的最后红色的一行: [mysqld] port=3306 #socket=MySQL skip-locking set-variable = key_buffer=16K set-variable = max_allowed_packet=1M set-variable = thread_stack=64K set-variable = table_cache=4 set-variable = sort_buffer=64K set-variable = net_buffer_length=2K set-variable = max_connections=32000 修改完毕后,重启MySQL即可。当然,为了确保设置正确,应该查看一下max_connections。 注意: 1、虽然这里写的32000。但实际MySQL服务器允许的最大连接数16384; 2、除max_connections外,上述其他配置应该根据你们系统自身需要进行配置,不必拘泥; 3、添加了最大允许连接数,对系统消耗增加不大。 4、如果你的mysql用的是my.ini作配置文件,设置类似,但设置的格式要稍作变通。# cp /usr/local/mysql/support-files/my-medium.cnf /etc/my.cnf添加mysql用户及用户组# groupadd mysql# useradd -g mysql mysql修改mysql目录权限# chown -R root /usr/local/mysql# chgrp -R mysql /usr/local/mysql# chown -R mysql /usr/local/mysql/data生成mysql系统数据库# /usr/local/mysql/scripts/mysql_install_db --user=mysql&如果报错:Could not find help file 'fill_help_tables.sql' in ./support-files or inside .. 修改/usr/local/mysql/scripts/mysql_install_db 文件,找到参数pkgdatadir,修改如下: pkgdatadir=/usr/local/mysql/support-files  (mysql实际目录)就执行/usr/local/mysql/configure然后直接登录mysql就ok了,如果还不行没关系,我认为是这样的2点原因1:mysql/support-files/目录下没有fill_help_tables.sql 这个帮助文件#cp /usr/local/mysql/share/fill_help_tables.sql /usr/local/mysql/support-files/2: 执行/usr/local/mysql/scripts/mysql_install_db --user=mysql&的时候mysql没有操作scripts或者support-files目录的权限chgrp -R mysql /usr/local/mysql/scripts/chgrp -R mysql /usr/local/mysql/support-files/chgrp -R mysql /usr/local/mysql/data/这样再执行#/usr/local/mysql/scripts/mysql_install_db --user=mysql&启动mysql服务# /usr/local/mysql/bin/mysqld_safe --user=mysql&如出现 Starting mysqld daemon with databases from /usr/local/mysql/data代表正常启动mysql服务了, 按Ctrl + C 跳出修改 mysql 的 root 密码# /usr/local/mysql/bin/mysqladmin -u root -p password 123456回车出现 Enter password: 最开始密码默认为空 继续回车即可123456 即为你的新密码 安装GD库(让PHP支持GIF,PNG,JPEG) a.安装 jpeg6 建立目录: mkdir -p /usr/local/jpeg6 mkdir -p /usr/local/jpeg6/bin mkdir -p /usr/local/jpeg6/lib mkdir -p /usr/local/jpeg6/include mkdir -p /usr/local/jpeg6/man mkdir -p /usr/local/jpeg6/man1 mkdir -p /usr/local/jpeg6/man/man1 # cd /home/xiutuo/software/ # tar -zvxf jpegsrc.v6b.tar.gz # cd jpeg-6b # ./configure --prefix=/usr/local/jpeg6/ --enable-shared --enable-static # make; make install b.安装libpng # cd /home/xiutuo/software/ # tar -zvxf libpng-1.2.8.tar.gz # cd libpng-1.2.8 # cp scripts/makefile.std makefile # make; make install c.安装 freetype # cd /home/xiutuo/software/ # tar -zvxf freetype-2.1.10.tar.gz # cd freetype-2.1.10 # mkdir -p /usr/local/freetype # ./configure --prefix=/usr/local/freetype # make;make install d.:安装zlib # cd /home/xiutuo/software/ #tar -zxvf zlib-1.2.3.tar.gz #cd zlib.1.2.3 # ./configure # make;make install e.安装GD库 # cd /home/xiutuo/software/ # tar -zvxf gd-2.0.33.tar.gz # mkdir -p /usr/local/gd2 # cd gd-2.0.33 # ./configure --prefix=/usr/local/gd2 --with-jpeg=/usr/local/jpeg6/ --with-png=/usr/local/lib/ --with-zlib=/usr/local/lib/ --with-freetype=/usr/local/freetype/ # make; make install e.安装Curl库 # cd /home/xiutuo/software/ # tar -zxf curl-7.15.0.tar.gz # mkdir -p /usr/local/curl # ./configure --prefix=/usr/local/curl # make; make install 五:安装php5,php5必须有libxml2支持! a.安装libxml2 # cd /home/xiutuo/software/ # tar -zxf libxml2-2.6.19.tar.gz # cd libxml2-2.6.19 # mkdir -p /usr/local/libxml2 # ./configure --prefix=/usr/local/libxml2 # make; make install b.安装 libxslt(可选安装,你可以不安装) # cd /home/xiutuo/software/ # tar -zxf libxslt-1.1.15.tar.gz # mkdir -p /usr/local/libxslt # cd libxslt-1.1.15 # ./configure --prefix=/usr/local/libxslt --with-libxml-prefix=/usr/local/libxml2 # make; make install c.安装php5 # cd /home/xiutuo/software/ # tar -zvxf php-5.1.2.tar.gz # mkdir -p /usr/local/php # cd php-5.1.2 # ./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache/bin/apxs --with-mysql=/usr/local/mysql/ --with-curl=/usr/local/curl --enable-ftp --with-libxml-dir=/usr/local/libxml2 --with-expat-dir=/usr/lib --enable-soap --with-xsl=/usr/local/libxslt --enable-xslt --with-gd=/usr/local/gd2/ --with-jpeg-dir=/usr/local/jpeg6/ --with-zlib-dir=/usr/local/lib/ --with-png=/usr/local/lib/ --with-freetype-dir=/usr/local/freetype/ --enable-mbstring# make # make install # cp php.ini-dist /usr/local/php/lib/php.ini (别忘记了呵呵) 配置 httpd.conf 让apache支持PHP# vi /usr/local/apache/conf/httpd.conf找到 AddType application/x-gzip .gz .tgz 在其下添加如下内容AddType application/x-httpd-php .phpAddType application/x-httpd-php-source .phps 安装zend# cd /usr/local# tar xzvf ZendOptimizer-3.0.1-linux-glibc21-i386.tar.gz# cd ZendOptimizer-3.0.1-linux-glibc21-i386# ./install.shmud安装过程中会要你输入php.ini的路径:/usr/local/php/etc/php.ini我们已经在安装php的时候将php.ini-recommended脚本复制过去了只需确定/usr/local/php/etc即可如果要正确安装zend,在你输入php.ini路径的时候必须参考<? phpinfo(); ?>PHP文件信息“Configuration File (php.ini) Path ”栏中的路径 最后 重启apache# /usr/local/apache/bin/apachectl restart在你Web目录里建一内容为 <? phpinfo(); ?>PHP文件, 输入URL地址查看PHP配置是否正确 安装JDK #cd /usr/local#chmod a+x jdk-1_5_0_09-linux-i586.bin#./jdk-1_5_0_09-linux-i586.bin#mv jdk-1_5_0_09 jdk#vi /etc/profile输入export JAVA_HOME=/usr/local/jdkexport CLASSPATH=.:$JAVA_HOME/lib/export PATH=$JAVA_HOME/bin:$PATH 然后重新登陆输入 #java -version检查是否安装成功如果原来的系统中有java需要删除原来的java环境#rm -f /usr/bin/java#rm -f /usr/bin/javac#rm -f /etc/alternatives/java#rm -f /etc/alternatives/javac Tomcat(Tomcat 5.0.30)Tomcat是在SUN的JSWDK的基础上发展起来的另一个优秀的JSP服务器,它不但支持Servlet,而且还提供了Web服务器的功能。安装:解压缩下载的包至/usr/local/下,建议更目录名为tomcat#cd /usr/local#tar -zxvf jakarta-tomcat-5.0.30.tar.gz#mv tomcat5.0.30 tomcat启动:#/usr/local/tomcat5.0.30/bin/startup.sh测试:地址栏输入:http://localhost:8080 回车。如果看到左上角有只漂亮的小猫咪,就说明OK了。 Tomcat与Apache的整合器(jakarta-tomcat-connectors Ver.2.0.4)安装解压缩下载的包至/usr/local/src/下。进入目录#cd /usr/local/src/jakarta-tomcat-connectors-jk2-2.0.4-src/jk/native2编译安装#./configure --with-apxs2=/usr/local/apache/bin/apxs#make#cd ../build/jk2/apache2#/usr/local/apache/bin/apxs -n jk2 -i mod_jk2.so编辑Apache配置文件/usr/local/apache/conf/httpd.conf在LoadModule段加入如下一行:代码:LoadModule jk2_module modules/mod_jk2.so 在/usr/local/apache/conf/目录下编辑保存一个名为workers2.properties的文本文件,内容为:代码:[logger]level=ERROR [config:]file=/usr/local/apache2/conf/workers2.propertiesdebug=0debugEnv=0 # Alternate file logger[logger.file]#level=DEBUGlevel=ERRORfile=/var/log/httpd/jk2.log [shm:]info=Scoreboard. Required for reconfiguration and status with multiprocess serversfile=/var/log/httpd/jk2.shmsize=1048576debug=0disabled=0 [channel.socket:localhost:8009]info=Ajp13 forwarding over socketdebug=0tomcatId=localhost:8009keepalive=1 [ajp13:localhost:8009]channel=channel.socket:localhost:8009debug=0 [status:]info=Status worker, displays runtime informations [uri:/jkstatus/*]info=Display status information and checks the config file for changes.worker=ajp13:localhost:8009 [uri:/*.jsp]worker=ajp13:localhost:8009context=/ 修改/usr/local/tomcat/conf/server.xml,在下方加入这行:代码:<Host name="www.xxxxx.com" appBase="/home/kayou/forum" debug="0" autoDeploy="true"><Context path="" docBase="." debug="0"/></Host> 保存退出。测试在/home/kayou/forum下编辑一test.jsp文件,内容为以下五行:代码:<%@ page language="java" contentType="text/html;charset=gb2312"%><%out.print("<font color=red>This is JSP's test page!</font><br><br>");%>Hello! The time is now <%= new java.util.Date() %> 再在地址栏输入http://localhost/test.jsp,有输出下面两行文字吗?This is JSP's test page!Hello! The time is now Wed Mar 09 02:34:15 CST 2006 OK,整合成功! phpMyAdmin 是一套可以用来管理 MySQL-server 以及单一数据库的 PHP 程序,对于不熟悉 MySQL 命令列指令的人来说,是很方便的管理工具。1、安装直接解压缩下载的phpMyAdmin-2.9.0.2-all-languages.tar.gz至/home/yourapps/下或者解到/usr/local目录但这样要到apache的httpd/conf中配置虚机,并将目录phpMyAdmin-2.9.0.2-all-languages.tar.gz改名为phpMyAdmin。2、使用在确保Apache服务器已经启动。打开浏览器,地址栏输入:http://localhost/phpMyAdmin 回车如果是解压到/usr/local下地址栏输入:http://你配置的虚机出现phpMyAdmin的主界面了吧。虽然可能是错误的提示,别着急接着做:#cd phpMyAdmin#mkdir config#chmod o+rw config #cp config.inc.php config/#chmod o+w config/config.inc.php然后进入 http://localhost/phpMyAdmin/scripts/setup.php配置MySQL的密码,端口,字符集等等,配置完毕点击SAVE然后再回到命令行:#mv config/config.inc.php .#chmod o-rw config.inc.php这时输入http://localhost/phpMyAdmin出现phpMyAdmin的主界面了吧。 为了您的数据库安全,我们要求访问http://localhost/phpMyAdmin的用户输入密码,下面就是添加密码:在你的apache配置文件里面,在虚机中加入<directory "/home/sh/web/phpMyAdmin">    Options FollowSymLinks    AllowOverride None    AuthType Basic    AuthName "Please Login"    AuthUserFile /home/apachepasswd/phpMyAdminpwd    require valid-user</directory>然后在/home/下创建apachepasswd目录,然后用apache的命令生成密码/usr/local/apache/bin/htpasswd -c /home/apachepasswd/phpMyAdminpwd admin然后提示你输入密码:xxxxxx最后重启apache 大功告成!! 在linux AS4和Fedora core5上反复测试通过!失败时的痛苦!成功时喜悦!经验与教训!努力吧!! 伪静态页http.conf <IfModule mod_rewrite.c>        RewriteEngine On        RewriteRule ^/files/article/info/(.*)/(.*)\.htm$ /modules/article/articleinfo.php?id=$2        RewriteRule ^(.*)/files/article/sort(.*)/0/1\.htm$ $1/modules/article/index\.php?class=$2        RewriteRule ^(.*)/files/article/toplastupdate/0/(.*)\.htm$ $1/modules/article/toplist\.php?sort=lastupdate&page=$2</IfModule>


阅读全文(3132) | 回复(0) | 编辑 | 精华
 



发表评论:
昵称:
密码:
主页:
标题:
验证码:  (不区分大小写,请仔细填写,输错需重写评论内容!)



站点首页 | 联系我们 | 博客注册 | 博客登陆

Sponsored By W3CHINA
W3CHINA Blog 0.8 Processed in 0.047 second(s), page refreshed 144781070 times.
《全国人大常委会关于维护互联网安全的决定》  《计算机信息网络国际联网安全保护管理办法》
苏ICP备05006046号