17.Linux软件安装之源码包安装

目录

1.源码包介绍 

2.源码包安装优缺点

3.源码包安装实验:(nginx)

4.隐藏nginx版本号实验


1.源码包介绍 

软件的源代码是软件的原始数据,但是源代码不能在计算机中直接运行安装。需要通过编译将源代码转换为 计算机可以识别的机器语言,之后才可以进行安装。源码包安装的方式可以在安装过程中根据自己的需求定制自 己所需要的功能。

Linux上大部分软件也是开源软件。

例如:apache、tomcat、PHP、MySQL等。开源软件大多都提供源码下载、源码安装等方式。 

2.源码包安装优缺点

优点:

※开放源代码,可以自行修改源代码。

※可以*选择安装所需功能。

※软件是编译安装,更加稳定高效。

※卸载方便,直接删除安装目录即可。

缺点:

※安装过程中过程较为复杂。

※编译过程时间较长(与RPM包相比)。 

3.源码包安装实验:(nginx)

1.[root@localhost ~]# mkdir  /lamp/
2.[root@localhost ~]# cd  /lamp/
3.[root@localhost lamp]# rz -E	上传apr-1.7.0.tar.gz  apr-util-1.6.1.tar.gz  httpd-2.4.51.tar.gz三个压缩包
4.[root@localhost lamp]# tar -xf httpd-2.4.51.tar.gz
5.[root@localhost lamp]# yum -y install gcc gcc-c++ pcre-devel openssl openssl-devel expat-devel libxml2 libxml2-devel libpng libpng-devel zlib zlib-devel libmcrypt mhash mcrypt jpeg freetype	安装依赖
6.[root@localhost lamp]# tar -xf apr-1.7.0.tar.gz
7.[root@localhost lamp]# tar -xf apr-util-1.6.1.tar.gz
8.[root@localhost lamp]# cp -a /lamp/apr-1.7.0   /lamp/httpd-2.4.51/srclib/apr
9.[root@localhost lamp]# cp -a /lamp/apr-util-1.6.1   /lamp/httpd-2.4.51/srclib/apr-util
10.[root@localhost lamp]# cd httpd-2.4.51/
11.[root@localhost httpd-2.4.51]# ./configure --prefix=/usr/local/apache2 --sysconfdir=/usr/local/apache2/etc --with-included-apr --enable-so --enable-deflate=shared --enable-expires=shared --enable-rewrite=shared --enable-ssl
12.[root@localhost httpd-2.4.51]# echo $?
13.[root@localhost httpd-2.4.51]# make && make install
14.[root@localhost httpd-2.4.51]# echo $?
15.[root@localhost httpd-2.4.51]# cd  /usr/local/apache2/htdocs/	进入apache的网页目录
16.[root@localhost htdocs]# echo  "hello word...." >>  index.html	创建一个网页文件
17.[root@localhost htdocs]# vim /usr/local/apache2/etc/httpd.conf	打开配置文件
  1. 搜素/ServerName找到ServerName www.example.com:80取消注释修改为ServerName www.hongfuedu.com:80
  2. Service管理httpd服务启动:
20.[root@localhost htdocs]# vim /etc/init.d/apached	创建启动脚本,让service命令管理apache,写入如下内容:
#!/bin/bash
# chkconfig: 2345 64 36         
# description: A very fast and reliable SQL database engine
httpd=/usr/local/apache2/bin/apachectl
case $1 in
start)
        $httpd start
        ;;
stop)
        $httpd stop
        ;;
restart)
        $0 stop                 
        sleep 0.05              
        $0 start
        ;;
configtest)                     
$httpd  -t
;;
*)
        echo "usage:$0 start|stop|restart|configtest."
        ;;
esac
21.[root@localhost system]# chmod +x /etc/init.d/apached
22.[root@localhost system]#  service  apached  configtest	检查语法错误
23.[root@localhost system]# service  apached  start
24.[root@localhost system]# chkconfig apached on	设为开机自启动
  1. 在winodws的hosts文件文件中添加192.168.132.163 www.hongfuedu.com
  2. 浏览器输入ip地址验证192.168.132.163或者www.hongfuedu.com

#在使用yum命令安装过程中,有些情况下会出现/var/run/yum.pid锁定的情况。有两种方法可以解决这个问 题。第一:kill “已锁定PID” 第二:rm -rf /var/run/yum.pid

4.隐藏nginx版本号实验

第一步:将原nginx服务关闭:/usr/local/nginx/sbin/nginx  -s  stop

第二步:删除/usr/local/nginx/和家目录下的解压后的nginx文件:

      rm -rf /usr/local/nginx和rm -rf /root/nginx-1.18.0

第三步:重新解压源码包:tar  -xvf  ./nginx-1.18.0.tar.gz

第四步:修改文件vim ./src/core/nginx.h   

13行 #define NGINX_VERSION  8.8.2 #此行修改想要的版本号。

继续修改文件vim ./src/http/ngx_http_special_response.c    

改第29行”<hr><center”nginx”<center>”CRLF为 ”<hr><center>IIS<center>”CRLF

第五步:正常./configure --prefix=/usr/local/nginx执行就行

上一篇:Apache2.4无法启动和PHP没有加载扩展到的解决方法


下一篇:Linux 搭建http server