[apache] Linux全能web服务器配置方案

Linux全能web服务器配置方案
纲要:
一,        Apache的安装
二,        编译安装PHP
三,        JSP环境的支持
四,        企业虚拟主机配置实战方案
五,        Web服务环境支持测试
一,Apache(httpd)的安装
1.rpm (redhat自带的安装)
   2.重新编译源代码安装
1,RPM包的安装:
[root@linuxhero root]# rpm -qa | grep httpd   查看是否已经安装此服务
httpd-manual-2.0.40-21
redhat-config-httpd-1.0.1-18
httpd-devel-2.0.40-21
httpd-2.0.40-21
2,重新编译Apache源代码安装
#rpm –e httpd –-nodeps   卸载原用的Apache用户
#tar -zxvf httpd-2.0.54.tar.gz 解压
#cd httpd-2.0.54
# ./configure --prefix=/usr/local/httpd --enable-modules=so --enable-so
注:--prefix参数用来指定安装后存放的路径,--enable-modules用来指定系统允许使用的功能扩展的类型,这里指定为so类型,--enable-so用来指定允许DSO(动态共享对像)
#make
#make install
#cd /usr/local/httpd/bin/
#./httpd –k start
二,编译安装PHP
1,freeTDS(解决PHP与MSSQL连接的问题)
2,编译安装PHP
具体安装如下:
1.        freeTDS的安装
#tar –zxvf freetds-stable.tgz
#cd freetds-0.63
#./configure --prefix=/usr/local/freetds --with-tdsver=8.0
  注:--with-tdsver指定的freetds支持的数据库版本号,其中8.0对应的是sqlservr2000.
#make
#make install
#vi /etc/ld.so.conf 设置系统动态库配置文件,加入以下:
/usr/local/freetds/lib
保存退出。
#ldconfig 重新加载动态库列表ld.so.conf
2.        编译安装PHP
#tar –zxvf php-5.0.4.tar.gz
#cd php-5.0.4
#./configure --with-mysql --with-sybase=/usr/local/freetds /
--with-apxs2=/usr/local/httpd/bin/apxs /
--prefix=/usr/local/php
#echo $?
显示为:0,表示编译过程中没有错误,显示其它都用错(我始是编译不成功,不能make,装了一个libxml2-2.6.19.tar.gz问题就解决了)
#make
#make install
#cp php.ini-dist /usr/local/lib/php.ini
#vi /usr/local/lib/php.ini
将register_globals = Off改为register_globals = On
#vi /usr/local/httpd/httpd.conf 些模块简单的修改
将Listen 80 改为: Listen 192.168.0.230:80
在配置文件中添加如下:
AddType application/x-httpd-php .php .php3 .php4 .php5
#AddHandler cgi-script .cgi,去掉#打开CGI脚本服务
#/usr/local/httpd/bin/apachectl restart 重启一下apahce服务
apache服务器的PHP配置完成。
设置启动文件:
#vi /etc/rc.d/rc.local
增加一行:
/usr/local/httpd/bin/apachectl start
配置重新导入
/etc/rc.d/init.d/xinetd restart
测试PHP
进入Apache默认主目录/usr/local/httpd/htdocs,在该目录下建一个phpinfo.php文件
#vi phpinfo.php 写入以一内容
<?phpinfo();?>
http://192.168.0.230/phpinfo.php 就可以看到相关的服务信息啦。

三,JSP环境支持
1,JDK的安装
   2,Tomcat的安装
   3.JDBC(JSP与,MSYQL,MSSQL连接)
   4,JK2(是APACHE组织指定的连接apceh和tomcat的工具)
   5. 启动TOMCAT(jsvc.tar.gz,tomcat启动工具)
具体操作如下:
1.        JDK的安装
[root@linuxhero root]# ls
j2sdk-1_4_2_08-linux-i586.bin   j2sdk-1_4_2_08-linux-i586-rpm.bin
有两个包.
j2sdk-1_4_2_08-linux-i586-rpm.bin的安装方法
#chmod 755 j2sdk-1_4_2_08-linux-i586-rpm.bin
#./j2sdk-1_4_2_08-linux-i586-rpm.bin (运行JDK自解包)
运行过程中会出现一个用户协议,选择yes即可,会释放出一个rpm包j2sdk-1_4_2_08-linux-i586.rpm.
#rpm –Uvh j2sdk-1_4_2_08-linux-i586.rpm
完成后会在/usr/目录下生成一个/usr/java/j2sdk1.4.2_08目录文件
另一个软件包运行后会直接释放成j2sdk1.4.2_08目录移动合适的位置,如/usr/local/
#chmod 755 j2sdk-1_4_2_08-linux-i586.bin
#./j2sdk-1_4_2_08-linux-i586.bin
# mv j2sdk1.4.2_08 /usr/local/
到此JDK已经安装完成
到/usr/bin目录下,把原用的java,javac文件删除:
#rm -rf java
#rm –rf javac
在/usr/bin 下建立 软连接 java
# ln -s /usr/local/j2sdk1.4.2_08/bin/java /usr/bin/java
# ln -s /usr/local/j2sdk1.4.2_08/bin/javac /usr/bin/javac
# java –version
# javac -version
java version "1.4.2_08"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.4.2_08-b03)
Java HotSpot(TM) Client VM (build 1.4.2_08-b03, mixed mode)
表示安装建立链接成功,写一个程序测试一下:

为了方便下在的工作建立两个软链接:
ln -s /usr/local/j2sdk1.4.2_08  /usr/local/jdk
ln -s /usr/local/j2sdk1.4.2_08/jre /usr/local/jre

2.Tomcat的安装
#tar -zxvf jakarta-tomcat-5.0.28.tar.gz
# mv jakarta-tomcat-5.0.28 /usr/local/tomcat
设置环境变量:
#Set  Environment  by NetSeek
JAVA_HOME=/usr/local/jdk
export JAVA_HOME
JRE_HOME=/usr/local/jre
export JRE_HOME
CLASSPATH=/usr=/usr/local/tomcat/common/lib/:/usr/local/jdk/lib:/usr/local/jre/lib
export CLASSPATH
PATH=$PATH:/usr/local/tomcat/bin/:/usr/local/httpd/bin:/usr/local/jdk/bin:/usr/local/jre/bin
export PATH
TOMCAT_HOME=/usr/local/tomcat
export TOMCAT_HOME
启动tomcat以检查是否存在错误:
#cd /usr/local/tomcat/bin
#./startup.sh
http://192.168.0.230:8080 可以看到猫头:)成功了。
3.JDBC的安装
#tar -zxvf mysql-connector-java-3.2.0-alpha.tar.gz
#cd mysql-connector-java-3.2.0-alpha
#cp mysql-connector-java-3.2.0-alpha-bin.jar /usr/local/tomcat/common/lib
#tar xfv mssqlserver.tar
#tar xfv msjdbc.tar
#cd lib
# cp *.jar /usr/local/tomcat/common/lib

4.编译安装JK2(整合Tomcat与Apache)
# tar zxvf jakarta-tomcat-connectors-jk2-src-current.tar.gz
# cd jjakarta-tomcat-connectors-jk2-2.0.4-src/jk/native2/
#./configure --with-apxs2=/usr/local/httpd/bin/apxs /
--with-java-home=/usr/local/jdk /
--with-tomcat41=/usr/local/tomcat /
--with-apr-lib=/usr/local/httpd/lib
注:--with-tomcat41参数指定Tomcat主目录,编译器没有直接对最新的Tomcat提供特定的编译参数,所以使用tomcat41的参数代替,用—with-java-home参数指定Java的安装路径.
#make
将在/jakarta-tomcat-connectors-jk2-2.0.4-src/jk/build/jk2/apache目录下,生成的mod_jk2.so复制到Apache的扩展模块目录/usr/local/httpd/modules下,
#cp mod_jk2.so /usr/local/httpd/modules
再将/jakarta-tomcat-connectors-jk2-2.0.4-src/jk/conf目录下的workers2.properties复制到Apache的配置文件目录/usr/local/httpd/conf下:
#cp workers2.properties /usr/local/httpd/conf

再编辑httpd.conf
vi /usr/local/httpd/conf/httpd.conf
LoadModule jk2_module modules/mod_jk2.so
然后再重启apache可以看到apache2handler
5. 启动TOMCAT(jsvc.tar.gz,tomcat启动工具)
Apache和Tomcat安装后需要设置自动启动,如果让Tomcat用root身份启动,Tomcat将会拥用root权限,这将可能给系统带来安全隐患,黑客可能利用这个来攻击我们的系统,所以我们得添加一个独立运行此服务的用户:
#useradd -d /usr/local/tomcat -s /usr/sbin/nologin tomcat
#chown -R tomcat:tomcat /usr/local/tomcat
#cd /usr/local/tomcat/bin/
#tar zxvf jsvc.tar.gz
#cd jsvc-src
#sh support/buildconf.sh (只能在些目录里执行,在别处执行会出错)
     会显示support/buildconf.sh: configure script generated successfully
#chmod 755 configure
#./configure
#make
#cp native/Tomcat5.sh /usr/sbin/tomcat
#cd /usr/sbin
#chmod 755 tomcat
#vi tomcat
可以看到:
JAVA_HOME=/usr/java/j2sdk1.4.2_03   指定java安装的目录
CATALINA_HOME=/home/tomcat5/jakarta-tomcat-5/build  指定了tomat的安装目录
DAEMON_HOME=/home/tomcat5/jakarta-commons/daemon 指定了tomcat命令所在的目录
TOMCAT_USER=tomcat5    指定tomcat运行后使用的账号
将上面的配置修改如下:
JAVA_HOME=/usr/local/jdk
CATALINA_HOME=/usr/local/tomcat/
DAEMON_HOME=/usr/local/tomcat/bin/
TOMCAT_USER=tomcat
找到$DAEMON_HOME/src/native/unix/jsvc /
将其更改成DAEMON_HOME/jsvc-src/jsvc /
修改完保存退出
vi /etc/rc.d/rc.local
在里面添加如下设置:
/usr/sbin/tomcat start

然后重启服务。

四,企业虚拟主机配置实战方案
要求:
1,DNS的简设置
2,虚拟域名:www.linuxher.com,虚拟用户linuxhero_com
3,允许FTP维护,禁止远程登陆(具体的FTP维护参照二)
4,为虚拟主机添加用户和使用目录
1,        DNS的简单设置,
在这里我们使用linuxhero.com这个虚拟域名,实际域名首先要确定域名已经在域名提供商或DNS上设置正常,在这里我们简的的讲一下DNS服务器在RedHat9。0上的简单的配置,假定服务器使用192.168.0.230和192.168.0.231这两个IP,我在网卡上绑定了两个IP,由于是在本地机子上测试条件限制,只能这样啦,
好啦不唠叨啦。
绑定多个IP:
在/etc/sysconfig/network-scripts,在该目录下新建一个ifcfg-etho0:0的文件内容如下:
DEVICE=eth0:0
IPADDR=192.168.0.231
NETMASK=255.255.255.0
ONBOOT=yes
#service network restart 重启一下网络服务就OK啦
DNS的简单配置
在这里关于DNS的详细介绍和配置我就不说啦,其实配置也不是难事,都是利用模板,关键是在配置的时候要细心,不要马虎,否则会现错,
1.基本配置文件::
/etc/named.conf
  /var/named/ 编写linuxhero.com.zone
  /etc/resolv.conf
2.#vi /etc/named.conf
zone "linuxhero.com" IN {
        type master;
        file "linuxhero.com.zone";
        allow-update { none; };
};

zone "0.168.192.in-addr.arpa" IN {
        type master;
        file "192.168.0.local";
        allow-update { none; };
};
3.#vi /var/named/linuxhero.com.zone 编写一个linuxhero.com.zone文件
$TTL    86400
@                       1D IN SOA       @ root (
                                        20050505               
                                        3H               
                                        15M              
                                        1W               
                                        1D )            

                        1D IN NS        @
                        1D IN MX  10    mail.linuxhero.com
ns                      1D IN A         127.0.0.1
www                     1D IN A         192.168.0.20
firebird                1D IN A         192.168.0.20
mail                    1D IN A         192.168.0.20
pop3                    1D IN A         192.168.0.20
smtp                    1D IN A         192.168.0.20
ftp                     1D IN A         192.168.0.21

4.#vi /etc/resolv.conf 把DNS服务器设置成为本机
nameserver 192.168.0.230
5.重新启动加载DNS服务:
#/etc/init.d/named start
#chkconfig named on 让named守护进程在每次系统引导时启动
#/etc/init.d/named restart 重启DNS服务
#rndc reload 重新加载配置文件,这是在修改配置文件后,使配置文件生效。
测试DNS服务是否工作正常
#host www.linuxhero.com
#nslookup 192.168.0.230
二. 配置虚拟主机
1. 为虚拟主机添加用户和使用目录
#useradd linuxhero_com -s /sbin/nologin   添加虚拟用户,不允许登陆      
#passwd linuxhero_com  (Do not Hack me 3ks) DnHm3ks 这是我设置的密码:)
#chmod 755 /home/linuxhero_com
#cd /home/linuxhero_com
#mkdir sites               建立网站存放根目录
#chown linuxhero_com:linuxhero_com sites    改变sites所属组为linuxhero_com
#mkdir logs                站点的日志目录
#chown linuxhero_com:linuxhero_com logs
#mkdir cgi-bin             目录用来运行CGI程序
#chown linuxhero_com:linuxhero_com cgi-bin
#mkdir sites/WEB-INF      用来存放Tomcat发布的程序
#chown linuxhero_com:linuxhero_com sites/WEB-INF
2.设置Apache的虚拟主机
#vi /usr/local/httpd/conf/httpd.conf
找到DirectoryIndex 在文件表中加上index.jsp,然后在文件尾添加虚拟主机配置信息:
NameVirtualHost 192.168.0.230:80
#www.linuxhero.com
<VirtualHost 192.168.0.230:80>
     ServerAdmin      webmaster@linuxhero.com
     DocumentRoot     /home/linuxhero_com/sites
     ServerName       www.linuxhero.com
     ServerAlias      linuxhero.com
     ErrorLog         /home/linuxhero_com/logs/error_log
     CustomLog        /home/linuxhero_com/logs/access_log common
     alias  /cgi-bin  /home/linuxhero_com/cgi-bin
     <Location /cgi-bin>
              Options ExecCGI
     </Location>
     <Location ~ "/*.jsp">
              JkUriSet worker ajp13:localhost:8009
     </Location>
     <Location ~ "/WEB-INF/*">
              JkUriSet worker ajp13:localhost:8009
     </Location>
     <Location ~ "servlet/*">
              JkUriSet worker ajp13:localhost:8009
     </Location>
</VirtualHost
3.        设置Tomcat的虚拟主机:
vi /usr/local/tomcat/conf/server.xml
在</Engine></Service></Server>上面加入如下:
------------------------------------------------------------------------------
<Host name="www.linuxhero.com" debug="0" appBase="/home/linuxhero_com/sites/"
       unpackWARs="true" autoDeploy="true"
       xmlValidation="false" xmlNamespaceAware="false">
       <Alias>linuxhero.com</Alias>
       <Context path="" docBase="." debug="0" reloadable="ture"/>  
       <Logger className="org.apache.catalina.logger.FileLogger"
                 directory="logs"  prefix="linuxhero_com_log."
                 suffix=".txt"
                 timestamp="true"/>
</Host>
</Engine>

  </Service>

</Server>
到此linuxhero_com这目录就可以同时支持PHP+JSP+mysql+mssql,啦,相当于LINUX下的WEB全能服务器.
五,Web服务环境支持测试
1.php环境的支持测试
上传了一个QQ面板的PHP程序,简单测试成功,显示如下:
在IE输入:http://www.linuxhero.com/qq/qq.php
2.JSP测试,

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值