sunsir 发表于 2018-11-26 14:11:51

apache网络服务的搭建和配置

第一部分:理论
一.       什么是apache
1.   apache是一种web服务平台,用它可以发布网站,供内/外网访问。
二.       为什么要用apache。
1.   Apache是免费的,iis是付费的。
2.   稳定性方面:IIS在实际使用中经常出现500错误,而且有的时候还会出现莫名其妙的假死现象。大型网站都使用APACHE作为自己的WWW服务提供工具。
3.   扩展性方面:IIS只能在微软公司的windows操作系统下使用,离开了windows他将一事无成。Apache则不同,windows/linux/unix都可以。
4.   安全性:IIS6之前的版本有很大问题,建议少用;apache安全性一直不错。
5.   开放性:iis源码不公开;apache完全公开。
三.       哪里会用到apache?
1.   不管是内网还是外网只要搭建网站平台都可以用。
四.apache主配文件httpd.conf中的主要参数介绍
ServerRoot "/usr/local/apache"   web服务器根目录
Timeout 300   如果客户端300秒还没有连上,或者服务器300秒还没有传送数据到客户端,就会自动断线。
KeepAlive On       设置是否支持续传功能。
MaxKeepAliveRequests 100   设置支持续传功能的数目。数目越多则浪费的硬盘空间越多。设置为0则不支持续传。
KeepAliveTimeout 15    如果该为使用者在15秒后还没有向服务器发出要求,则他在不能续传。
MaxRequestsPerChild 0       设置同时间内child process数目。
ThreadsPerChild 50         设置服务器使用进程的数目。
Listen 80
#Listen 12.34.56.78:80 #允许使用其它的Port或IP访问服务器。此例中Port为3000,IP为12.34.56.78:80。
#BindAddress *
#设置Apache监听所有的IP,也可以具体的指定。
#LoadModule anon_auth_module modules/ApacheModuleAuthAnon.dll ……    打开当前未激活预定义的模块。
#ExtendedStatus On   设置服务器产生的状态信息。
Port 80            设置服务器使用的Port。
ServerAdmin you@your.address         设置服务器管理者的E-Mail地址。
#ServerName new.host.name    服务器的主机名。如果你有固定的IP地址,则不需要设置。
DocumentRoot "/usr/local/apache/htdocs"    设置存放站点html文件的目录。

五. /usr/local/apache2/目录中的子目录 (源码包安装的apache的目录)
子目录
描述
bin
保存Apache服务器运行和管理所需的执行程序
lib
保存Apache服务器运行所需的库文件
conf
保存Apache服务器的配置文件
htdocs
Apache服务器的文档根目录
manual
保存Apache服务器的帮助手册文件(网页格式)
man
保存Apache服务器的手册页文件
logs
保存Apache服务器的日志文件
第二部分:实验
一.Gcc的安装(在安装apache之前,必须先安装gcc)
挂载gcc.iso这个包,进入这个目录然后执行
rpm -ivh    * --force
二. Apache的安装:
安装Apache(2.2)
tar xjvf 2.2…..
cd http….
./configure --prefix=/usr/local/apache--enable-modules=so (相当于windows下的dll库)   
make
make install
三.安装mysql
mount /dev/hdc/mnt
cd /mnt/ReHat/RPMS
rpm   -ivh   mysql-4.1.7-4.RHEL4.1.i386.rpm      –aid
rpm   -ivh    mysql-server-4.1.7-4.RHEL4.1.i386.rpm
启动mysqld服务后 可以直接用mysql来登录mysql了


四.安装php
安装前必须安装的rpm包
flex-2.5.4a-33.i386.rpm(在做./configure这一步的时候,php会报错,提示需要安装这个包)
然后是php二进制包的安装过程
Tar xjvf php……
Cdphp…..
./configure    --prefix=/usr/local/php5      --with-apxs2=/usr/local/apache/bin/apxs
(小知识点:apxs相当于apache的扩展工具,他可以扩展apache的模块,比如以.so结尾的文件,但前提是在编译apache时,要开启模块扩展功能 )
Make
Make install
五.整合apache 和php
然后修改apache的配置文件
vi/usr/local/apache/conf/httpd.conf
1.查找是否存在下面一行,如果没有,证明php安装没有成功。
LoadModule   php5_module modules/libphp5.so
2.在837行下面添加如下一行(可以复制一下837行,然后修改一下就可以了)
AddType      application/x-httpd-php   .php添加该行
3.修改395行,添加index.php,如下所示
DirectoryIndex   index.php index.htmlindex.html.var(把index.php加上)
六.测试php环境
1.在apache 的主目录建立文件index.php
文件内容如下

2.在客户端用web浏览器测试php环境是否正常。
七.安装discuz!软件
1.      解压软件
unzip/home/aa/Discuz….       –d /usr/local/apache/htdocs
2.       设置/upload目录下面文件的权限。
./config.inc.php      ./attachments   ./forumdata./forumdata/cache
./forumdata/templates   ./forumdata/threadcaches   ./forumdata/logs   ./uc_client/data/cache
3.       进入数据库建立一个数据库
进入数据库/usr/local/mysql/bin/mysql
         Create 数据库名称
4.       在一台win系统用浏览器访问 http://ip/upload/install.php来进一步安装
搭建虚拟主机
1.       基于域名的虚拟主机
a.       新建目录/usr/local/apache/htdocs/123
b.       在123目录下面新建文件index.html 内容:123.com
c.       新建目录/usr/local/apache/htdocs/456
d.       在456目录下面新建文件index.html 内容:456.com
e.       修改/usr/local/apache/conf/httpd.conf在文件的最后加入内容如下
#NameVirtualHost *:80 把前面的#去掉
   
    ServerAdminwebmaster@dummy-host.example.com
    DocumentRoot/usr/local/apache/htdocs/123
    ServerNamewww.123.com
    ErrorLoglogs/dummy-host.example.com-error_log
    CustomLoglogs/dummy-host.example.com-access_log common


    ServerAdminwebmaster@dummy-host.example.com
    DocumentRoot/usr/local/apache/htdocs/456
    ServerNamewww.456.com
    ErrorLoglogs/dummy-host.example.com-error_log
    CustomLoglogs/dummy-host.example.com-access_log common


f.       测试在浏览器里面分别输入www.123.com ;www.456.com查看网页是否能正常显示。(注意:在做这些之前,必须搭建好dns服务器,解析好www.123.com和www.456.com)
file:///C:/Users/ge/AppData/Local/Temp/msohtmlclip1/01/clip_image002.jpgfile:///C:/Users/ge/AppData/Local/Temp/msohtmlclip1/01/clip_image004.jpg
2.基于ip的虚拟主机:
   a.前四部跟上面一样,
   b.第五步:修改/usr/local/apache/conf/httpd.conf在文件的最后加入内容如下

    ServerAdminwebmaster@dummy-host.example.com
    DocumentRoot/usr/local/apache/htdocs/123
    ServerName10.100.100.172
    ErrorLoglogs/dummy-host.example.com-error_log
    CustomLoglogs/dummy-host.example.com-access_log common


    ServerAdminwebmaster@dummy-host.example.com
    DocumentRoot/usr/local/apache/htdocs/456
    ServerName10.100.100.182
    ErrorLoglogs/dummy-host.example.com-error_log
    CustomLoglogs/dummy-host.example.com-access_log common

file:///C:/Users/ge/AppData/Local/Temp/msohtmlclip1/01/clip_image006.jpgfile:///C:/Users/ge/AppData/Local/Temp/msohtmlclip1/01/clip_image008.jpg
2.       基于端口的虚拟主机:(先让学生自己做)

file:///C:/Users/ge/AppData/Local/Temp/msohtmlclip1/01/clip_image010.jpg
file:///C:/Users/ge/AppData/Local/Temp/msohtmlclip1/01/clip_image012.jpg
file:///C:/Users/ge/AppData/Local/Temp/msohtmlclip1/01/clip_image014.jpg
建立系统用户的个人主页
vhttpd.conf文件配置
§在httpd.conf文件中需要进行UserDir的设置
UserDir public_html
v用户目录设置
§用户宿主目录需设置为其他用户可以进入
$ chmod o+x~


[*]用户宿主目录中需要建立public_html目录




[*]public_html目录中需要建立index.html文件

v访问用户个人主页    http://192.168.1.2/~st02/
补充:mysql源码包的安装
tar xzvf mysql-5…..
cd mysql-5….
./configure --prefix=/usr/local/mysql --with-charset=gbk--sysconfdir=/etc
#make
#make install
# cp /usr/local/mysql/share/mysql/my-medium.cnf /etc/my.cnf 不同版本源路径可能不一样
#cd /usr/local/mysql
#useradd mysql
#/usr/local/mysql/bin/mysql_install_db
#chown -Rmysql.mysql /usr/local/mysql
#/usr/local/mysql/bin/mysqld_safe --user=mysql &
修改mysql的root密码方法:
/usr/local/mysql/bin/mysqladmin –urootpassword 要设置的密码
#chmod 700 /etc/rc.d/init.d/mysqld
Mysql自启动的方法
方法1# cp/usr/local/mysql/share/mysql/mysql.server /etc/rc.d/init.d/mysqld      
#chkconfig --add mysqld
#chkconfig --level 345 mysqld on
方法2   echo “/usr/local/mysql/bin/mysql –-user=mysql&”>>/etc/rc.local





页: [1]
查看完整版本: apache网络服务的搭建和配置