设为首页 收藏本站
查看: 1230|回复: 0

[经验分享] Linux下Apache的简单安装并验证

[复制链接]

尚未签到

发表于 2018-11-27 11:32:22 | 显示全部楼层 |阅读模式
环境介绍:两台linux系统(一台BIND服务器,一台用于安装Apache程序),一台用于测试
RHEL4系统中默认安装了Apache服务器,软件包的名称是httpd,而不是apache,版本为2.0.52。如果httpd软件包没有被安装在系统中,可以从RHEL4第2张安装光盘中安装该软件包。
相关Apache服务器软件包作用:
Httpd软件包是Apache服务器程序软件包,包括服务器的执行程序、配置文件、启动脚本等必备文件
Httpd-manual软件包是Apache服务器的手册文档,该软件包中以网页的形式包括了Apache服务器的完整说明文档,内容相当详细,是Apache服务器的重要文件之一。
REHL4系统中安装httpd软件包之后(RPM包进行安装) ,与Apache服务器相关的重要目录和文件如下:
/etc/httpd/是Apache服务器的根目录
/etc/httpd/conf/httpd.conf是Apache服务器的主配置文件
/var/www/html/是Apache服务器的文档根目录
/etc/init.d/httpd是Apache服务器启动脚本文件
/var/log/httpd/access_log是Apache服务器的访问日志文件
/var/log/httpd/error_log是Apache服务器的错误日志文件
编译安装Apache:
准备GCC环境:
DSC0000.png
准备GCC环境后,进行如下操作:
示:cp httpd-2.0.59.tar.gz  /usr/local/src/
即将httpd源码包复制至/usr/local/src/
示:tar –zxvf httpd-2.0.59.tar.gz
上面指令为进行源码包解压
进入解压后目录,进行编译前的配置:
DSC0001.png
进行编译服务器程序,并安装已经编译完成的程序:
DSC0002.png
可以看到在执行makl install命令之后/usr/local/目录中多了一个apache2目录,大小约21M:
DSC0003.png
DSC0004.png
Bin目录中包括了Apache服务器运行和管理所需的执行程序,其中httpd是服务器的执行程序,apachectl是服务器的启动脚本
Lib目录中保存了Apache服务器运行所需的库文件
Conf目录用于保存Apache服务器的配置文件,其中httpd.conf是Apache服务器的主配置文件
Htdocs目录是Apache服务器的文档根目录,该目录将作为Web服务器的根目录
Manual目录中保存了Apache服务器的帮助手册文件,文件是网页格式的,可以通过访问Apache服务器中的/manual目录阅读该目录下的帮助文件内容
Man目录用于保存Apache服务器手册页文件,文件被分别保存在man1和man8两个子目录中,可用man命令阅读指定的手册页文件查询目录的帮助信息
Logs目录是用于保存Apache服务器的日志文件,其中access_log文件是访问日志文件,error_log文件是错误日志文件
Apache服务器的启动和停止:
DSC0005.png
注:编译安装类似于Windows中的绿色版软件,它并未写入系统的注册表中,则不能使用service命令来启动或停止服务
在XP客户机上查看Apache测试页:
DSC0006.png
在实际的应用系统中,Apache服务器需要设置为在linux系统启动时自动运行,因此需要将apachectl脚本的启动命令加入rc.local 文件,之后每次系统启动都将自动启动Apache服务器
示:vi  /etc/rc.local
DSC0007.png
调整Apache服务器的默认设置:
从httpd服务程序的启动信息可以看出,Apache服务器的主机名没有进行正确的配置,需要对/usr/local/apache2/conf/目录中的httpd.conf配置文件的内容调整:
示:vi  /usr/local/apache2/confi/httpd.conf
DSC0008.png
重启httpd服务器程序并测试httpd.conf的语法:
DSC0009.png
建立系统用户的个人主页:
查看httpd.conf配置文件:
示:vi  /usr/local/apache2/conf/httpd.conf
DSC00010.png
创建本地用户,并使用本地用户登录,创建目录public_html且建立和编辑index.html文件:
DSC00011.png
DSC00012.png
更改tom宿主目录的权限:
DSC00013.png
注:-R表示向下继承权限
在XP客户机上测试:
DSC00014.png
域名虚拟主机的配置:
基于域名的虚拟主机是Apache服务器的又一个重点应用,下面将通过为www.yunjing1.com和www.yunjing2.com在Apache服务器中配置虚拟主机:
在/目录下创建目录并在子目录下创建yunjing1和yunjing2的根目录和主页:
DSC00015.png
示:vi  index.html
DSC00016.png
示:vi  /wwwroot/yunjing2_html/index.html
DSC00017.png
在Apache服务器的httpd.conf配置文件中进行域名虚拟主机的设置内容:
DSC00018.png
重启apachectl服务程序:
DSC00019.png
在XP客户机上测试:
DSC00020.png
DSC00021.png
Apache与其它应用程序的协作:
LAMP网页应用架构
Web应用是最早体现出Linux系统应用价值的领域之一,在Linux系统中使用Apache和其它开源软件可以构建出非常优秀的Web应用系统,这个成熟的应用模式通常被称为LAMP架构,整个结构有以下组成部分
使用Linux操作系统作为整个Web服务体系的构建平台,Linux表示LAMP中的L
使用Apache作为前端的Web服务器,Apache代表LAMP中的A
使用MySQL作为后端的SQL数据库服务器,MySQL代表LAMP中的M
使用Perl、PHP或python语言作为动态网页的编程语言编写各种功能的应用系统,3种以字母P开始的编程语言共同代表LAMP中的P
配置Apache、PHP、MySQL协同工作
安装并管理MySQL服务器
由于是手动安装MySQL数据库,因此需要在系统中建立名为mysql的用户和组,并指定mysql用户的宿主目录是/usr/local/mysql/data
DSC00022.png
使用tar命令将下载的mysql软件包释放到/usr/local/目录中,压缩包会释放到名为mysql-3.23.58-pc-linux-i686的子目录中,为了便于管理,需要使用ln命令建立该目录的符号链接目录为mysql(这里做的是软链接):
DSC00023.png
在/var/lib/目录下建立名为mysql的子目录,并使用chown命令设置该目录和MySQL服务器安装目录的属主和属组:
DSC00024.png
进入MySQL服务器程序的目录,复制mysql的配置文件my.cnf到/etc目录中,并执行mysql_install_db命令初始化MySQL服务器中的数据库:
DSC00025.png
注:如果MySQL的RPM软件包在系统中已经安装,/etc/目录中会存在my.cnf文件,将提示覆盖原有的my.cnf文件,选择y进行覆盖即可
示:./scripts/mysql_install_db
再次使用chown命令设置/var/lib/mysql/和/usr/local/mysql/data/两个目录中的所有文件都属于mysql用户和mysql用户组,以保证mysql系统用户对新建立的数据库文件有足够的访问权限:
DSC00026.png
使用权safe_mysqld命令启动MySQL服务器运行,并使用命令选项—user指定MySQL数据库服务程序以系统用户mysql的身份运行
DSC00027.png
DSC00028.png
由于MySQL 数据库的管理员用户root的寝口令为空,所以mysql数据库程序启动后的第一件工作就是为MySQL数据库中的root用户设置口令:
DSC00029.png
成功为数据库用户root设置口令后执行MySQL程序可以进入MySQL数据库的交互界面,在MySQL命令中需要使用-u选项指定登录数据库使用的用户名,使用-p选项设置提示用户输入口令,登录后创建用于phpBB的数据库:
DSC00030.png
安装并管理PHP环境:
安装flex-2.5.4a-33.i386.rpm软件包,若不安装待会编译准备时可能出错
DSC00031.png
将php-4.4.4.tar.gz软件包减压至/usr/local/src/下,并进入该减压目录:
DSC00032.png
进入php-4.4.4目录后,使用./configure命令进行编译前的准备工作:
DSC00033.png
编译准备完成之后,使用make;make install命令进行编译并安装:
DSC00034.png
经过了漫长的编译和安装过程之后,PHP程序就已经安装到Linux系统中了,但是PHP程序还没有配置文件,需要将PHP的配置模板文件php.ini-dist(此文件即在减压后的源码包中)复制到PHP的配置目录中作为配置文件使用:
DSC00035.png
进行Apache服务器中的设置:
由于PHP程序需要和Apache服务器配合工作,因此需要在Apache服务器的主配置文件httpd.conf中进行PHP的相关设置。
编辑httpd.conf文件,确认LoadModule php4_module modules/libphp4.so设置行已经有效,并在相应的位置(通过查找AddType关键字)添加设置行AddType application/x-httpd-php .php,以便Apache服务器能够识别php类型的文件:
DSC00036.png
注:在整个过程中可在末行模式(:)下通过/命令来查看相关行
DSC00037.png
DSC00038.png
回车后按大写N找到如下位置,并添加相关行:
DSC00039.png
在http.conf文件中查找DriectoryIndex关键字,并在该设置行的末尾添加index.php,以便Apache服务器能够正确处理php类型的index文件:
DSC00040.png
对httpd.conf文件完成以上设置后,使用apachectl脚本停止httpd服务器程序,然后再启动httpd服务程序:
DSC00041.png
使用vi编辑器在Apache服务器在文档根目录中建立名为test.php的测试文件,其内容如下:
DSC00042.png
DSC00043.png
完成之后便可在XP客户机上进行测试了,测试前请先做如下操作:
将之前做的虚拟目录注释:
示:vi  /usr/local/apache2/conf/httpd.conf
DSC00044.png
重启服务:
示:/usr/local/apache2/bin/apachectl restart
在XP上正式测试:
DSC00045.png
安装phpBB论坛系统:
phpBB是优秀的论坛程序,其运行环境为LAMP,是典型的LAMP架构程序。phpBB是PHP语言编写的Web程序,其源代码可以从phpBB官方网站的下载页面进行下载:
注: http://www.phpbb.com/downloads.php
使用tar命令将phpBB2-2.0.21.tar.gz 的程序包释放到Apache服务器的文档根目录中,释放过程会建立名为phpBB2的子目录:
DSC00046.png
使用chown命令将phpBB2子目录及其下所有文件的属主和属组都设置为nobody,以便Apache服务器有足够的权限访问phpBB程序:
DSC00047.png
在将phpBB2论坛配置好之后,建议使用apachectl启动脚本重启httpd服务的执行程序:
示:/usr/local/apache2/bin/apachectl restart
在XP上访问phpBB2论坛,并进行相关设置:
DSC00048.png
DSC00049.png
DSC00050.png
在浏览器中见安装结束画面后,先不要急于访问phpBB论坛程序的页面,出于安全性考虑,需要先删除phpBB2程序目录中的install和contrib两个子目录:
DSC00051.png
DSC00052.png
DSC00053.png
从上面看来我们的phpBB2论坛成功搭建了




运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-640264-1-1.html 上篇帖子: 清空apache的访问日志以及使用cronolog分割apache日志 下篇帖子: 做最简单的www—apache php
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表