编译安装apache并调优

apr和apr-util下载地址:    http://archive.apache.org/dist/apr/

[一般安装在/usr/local/apr/下]

1:安装apr apr-util

1.1:安装apr

1.2:安装apr-util

wget http://archive.apache.org/dist/apr/apr-util-1.5.2.tar.gz

#如果出错,则是没有检测到apr的安装路径,只需制定路径即可

./configure --with-apr=/usr/local/apr

#如果出错,则是缺少某个头文件,我的缺少 expat.h

yum install expat-devel

1.3:安装pcre:      http://www.pcre.org/

wget https://ftp.pcre.org/pub/pcre/pcre2-10.32.tar.gz

 

2:安装ssl

yum install mod_ssl -y

3:安装 apache

隐藏版本信息

[root@localhost httpd-2.4.39]# vim include/ap_release.h

改:

#define AP_SERVER_BASEVENDOR "Apache Software Foundation" 服务供应商名称

#define AP_SERVER_BASEPROJECT "Apache HTTP Server"服务的项目名称

#define AP_SERVER_BASEPRODUCT "Apache"服务的产品名

 

#define AP_SERVER_MAJORVERSION_NUMBER 2 主要版本号

#define AP_SERVER_MINORVERSION_NUMBER 4  小版本号

#define AP_SERVER_PATCHLEVEL_NUMBER   39  补丁级别

#define AP_SERVER_DEVBUILD_BOOLEAN    0

#define AP_SERVER_BASEVENDOR "TDWB"

#define AP_SERVER_BASEPROJECT "TDWB Soft Server"

#define AP_SERVER_BASEPRODUCT "TDWB"

 

#define AP_SERVER_MAJORVERSION_NUMBER 1

#define AP_SERVER_MINORVERSION_NUMBER 0

#define AP_SERVER_PATCHLEVEL_NUMBER   02

#define AP_SERVER_DEVBUILD_BOOLEAN    0

注:上述列出的行,大家可以修改成自己想要的,然后编译安装之后,再对httpd-default.conf文件进行修改,对方就彻底不知道你的版本号了。

 

./configure --enable-so --enable-rewrite –enable-headers --enable-ssl --with-ssl=/usr/local/ssl --enable-mods-shared=all --enable-static-ab --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util

--with-pcre=/usr/local/pcre

"./configure" \
"--prefix=/usr/local/httpd" \
"--enable-so" \
"--enable-ssl" \
"--enable-cgi" \
"--enable-rewrite" \
"--with-zlib" \
"--with-pcre" \
"--enable-mpms-shared=all" \
"--with-mpm=prefork" \

配置参数用途:

--enable-so                # 支持动态加载模块

--enable-rewrite            #支持网站地址重写

--enable-ssl                # 支持ssl加密

--enable-mods-shared=all  #支持动态加载模块

--enable-file-cache         #提供文件描述符缓存支持,从而提高apahce性能

--enable-mem-cache       # 基于内存的缓冲处理器

--enable-disk-cache        # 基于磁盘的缓冲处理器

--enable-deflate            #支持页面传输前进行压缩

--enable-cache             #基于启用url键的内容动态缓冲(内存或磁盘)

--enable-expires            #支持设置网页缓存的时间

--enable-cgi                #执行CGI脚本

--with-mpm=worker       # 使用多进程,每个进程包含多线程的方式,每个线程一次处理一个连接,worker对于高流量的服务器通常是一个好的选择,因为它比prefork mpm占用更少的内存。

 

安装完成后再次隐藏版本号和系统类型

接下来再次修改:

[root@localhost httpd-2.4.39]# vim /usr/local/httpd/conf/httpd.conf

改:

#Include conf/extra/httpd-default.conf

为:

Include conf/extra/httpd-default.conf

下面再次打开扩展默认配置文件

[root@localhost httpd-2.4.39]# vim /usr/local/httpd/conf/extra/httpd-default.conf

改:

55 ServerTokens Full

65 ServerSignature On    signature 签名

为:

ServerTokens Prod   #不显示服务器操作系统类型

 

ServerSignature Off   #不显示web服务器版本号

改完以后重启服务器

Apache支持php

AddType application/x-httpd-php .php

LoadModule php7_module modules/librh-php70-php7.so

<IfModule dir_module>

DirectoryIndex index.html index.php

</IfModule>

点赞

发表评论

电子邮件地址不会被公开。必填项已用 * 标注