Apache httpd-2.4安装并配置转发

目录

  • 一、写在前面
  • 二、下载Apache
  • 三、编译安装依赖库
    • 3.1 编译安装apr
    • 3.2 编译安装apr-util
    • 3.3 编译安装pcre
  • 四、编译安装及启动Apache
    • 4.1 编译安装Apache
    • 4.2 启动Apache
  • 五、配置Apache
    • 5.1 备份 httpd.conf
    • 5.2 启用代理模块
    • 5.3 修改监听端口
    • 5.4 配置转发规则
  • 六、常用指令
    • 6.1 启动Apache指令:
    • 6.2 查看启动情况
    • 6.3 重启Apache
  • 七、写在后面

一、写在前面

(由于考虑到公司业务和代码安全性问题,所有内容已脱敏)

下载方式为 手动下载和 wget 下载。

Linux下安装路径以本人习惯为准,可根据需求自行更改。

参考文献
Apache安装编译遇到APR的问题

二、下载Apache

以下为 wget 下载教程,也可手动访问 wget 后链接手动下载并上传服务器。

从https://httpd.apache.org/download.cgi下载Apache,本文使用的是2.4.58版本。

wget https://dlcdn.apache.org/httpd/httpd-2.4.58.tar.gz

同时还需要下载依赖库:

wget http://archive.apache.org/dist/apr/apr-1.4.5.tar.gz  
wget http://archive.apache.org/dist/apr/apr-util-1.3.12.tar.gz  
wget http://jaist.dl.sourceforge.net/project/pcre/pcre/8.10/pcre-8.10.zip

将四个压缩包移动到服务器同一目录/tmp/apache2.4.58-install,将Apache中所有文件复制到/apps/apache2.4.58-install中

mkdir /apps/apache2.4.58-install/
cd /apps/apache2.4.58-install/
cp /tmp/apache2.4.58-install/* /apps/apache2.4.58-install/ # 拷贝Apache和依赖库
ls # 查看拷贝结果

三、编译安装依赖库

apache2.4 版本后需要三个依赖: aprapr-utilpcre ,所有进行优先编译安装。

3.1 编译安装apr

cd /apps/apache2.4.58-install/
tar -zxf apr-1.4.5.tar.gz # 解压 apr
cd apr-1.4.5
./configure --prefix=/apps/apr
make && make install

3.2 编译安装apr-util

cd /apps/apache2.4.58-install/
tar -zxf apr-util-1.3.12.tar.gz # 解压 apr-util
cd apr-util-1.3.12
./configure --prefix=/apps/apr-util --with-apr=/apps/apr
make && make install

3.3 编译安装pcre

cd /apps/apache2.4.58-install/
unzip -o pcre-8.10.zip # 解压 pcre
cd pcre-8.10  
./configure --prefix=/apps/pcre  
make && make install

四、编译安装及启动Apache

4.1 编译安装Apache

解压安装包并进入目录:

cd /apps/apache2.4.58-install/
tar -xzvf httpd-2.4.58.tar.gz
cd httpd-2.4.58

执行configure脚本:

./configure --prefix=/apps/apache2.4.58 --with-apr=/apps/apr --with-apr-util=/apps/apr-util --with-pcre=/apps/pcre

如果找不到 pcre-config ,报错如下:

checking for pcre-config... pcre-config
configure: error: Did not find working script at pcre-config

就具体到 pcre-config 路径执行:

./configure --prefix=/apps/apache2.4.58 --with-apr=/apps/apr --with-apr-util=/apps/apr-util --with-pcre=/apps/pcre/bin/pcre-config

然后编译并安装:

make && make install 

4.2 启动Apache

启动Apache指令:

如果有配置文件,则可以修改完配置文件再进行启动

/apps/apache2.4.58/bin/apachectl start

五、配置Apache

5.1 备份 httpd.conf

第一次修改 httpd.conf 可以先备份 httpd.conf 文件

cp /apps/apache2.4.58/conf/httpd.conf /apps/apache2.4.58/conf/httpd.conf.copy

5.2 启用代理模块

在httpd主配置文件中,取消以下两个模块的注释:

LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_http_module modules/mod_proxy_http.so
# 编辑配置文件
vim /apps/apache2.4.58/conf/httpd.conf

即将:

#LoadModule proxy_module modules/mod_proxy.so
#LoadModule proxy_http_module modules/mod_proxy_http.so

改为:(也可以在对应位置添加以下模块)

# 代理模块 需要启动 mod_proxy 和 mod_proxy_http
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_http_module modules/mod_proxy_http.so

5.3 修改监听端口

默认监听80端口,可以通过修改httpd主配置文件中的Listen指令修改监听端口:

# 本文以修改 8080 为例
Listen 8080

5.4 配置转发规则

将访问8080的端口访问转发到7080上面来

在httpd主配置文件中添加以下内容:

<VirtualHost *:8080>
    ProxyPreserveHost On
    ProxyPass /  http://xx.xx.xx.xx:7080/
    ProxyPassReverse /  http://xx.xx.xx.xx:7080/
</VirtualHost>

其中xx.xx.xx.xx是被转发的目标地址。

如果此时 Apache 已经启动,需要重启 Apache 才能让配置生效。
启动指令参考本文 6.1
重启指令参考本文 6.3

六、常用指令

6.1 启动Apache指令:

如果有配置文件,则可以修改完配置文件再进行启动

/apps/apache2.4.58/bin/apachectl start

6.2 查看启动情况

方法一:列出所有正在运行的与"httpd"相关的进程

ps aux | grep httpd

如果上述命令没有输出任何结果,或者没有显示与"httpd"相关的进程,则表示Apache没有成功启动。

方法二:列出所有正在运行的与"httpd"相关的进程

# 这里的 8080 需要改为你监听的端口 
netstat -tuln | grep 8080

如果Apache正在监听端口80(或其他HTTP端口),则命令的输出中应该会显示类似于以下内容:

tcp        0      0 0.0.0.0:8080                0.0.0.0:*                   LISTEN  

这表明Apache已成功启动并正在监听端口80,以接受HTTP请求。

6.3 重启Apache

执行以下命令重启Apache,重启可以让配置文件生效:

/apps/apache2.4.58/bin/apachectl restart

七、写在后面

欢迎关注,会经常记录一些工作中遇到的问题。

欢迎随时留言讨论,与君共勉,知无不答!

你可能感兴趣的:(Linux,apache)