共计 2303 个字符,预计需要花费 6 分钟才能阅读完成。
Apache 作为一款开源软件,是广泛应用的 web 应用之一,Apache 有两个主要版本 1.X 和 2.X,一般我们使用 2.X 版本,比起 1.X 版本它支持很多新的功能,下载 Apache 源码包的地址为:https://httpd.apache.org,下载到源码包后开始准备安装:
1、为避免发生端口冲突,程序冲突等问题,如果有 rpm 方式安装的 httpd 服务,建议将其卸载。
2、挂载系统镜像,切换至系统盘中的 Packages 目录,安装相关依赖包(注意,最好一个一个的依次安装,因为如果有些安装包已经安装了,一次安装下面的安装包的话,就会报错)
3、将 httpd 源码包进行解包,并指定释放目录,然后切换到展开后的源码目录中:
4、配置:
上面配置命令中,各个选项的含义如下:
–prefix:指定将 httpd 服务安装到哪个目录下。
–enable-so:启用动态加载模块支持,让 httpd 具备进一步扩展功能的能力。
–enable-rewrite:启用网页地址重写功能,用于网站优化和目录迁移维护。
–enable-charset-lite:启用字符集支持,以便支持使用各种字符集编码的网页。
–enable-cgi:启用 CGI 脚本程序支持,便于扩展网站的应用访问能力。
5、执行 make && make install 命令进行编译安装:
若在上面配置、编译、安装过程中报错,排除命令错误的前提下,那么一般是少了依赖包,检查依赖包有没有少装吧!
6、安装完成后,切换至安装成功的目录后,会看到以下几个目录:
各个主要子目录的用途如下:
- bin:存放 httpd 服务的各种执行程序文件。包括主程序 httpd、服务控制工具 apachectl 等。
- cgi-bin:存放各种 CGI 程序文件。
- logs:存放 httpd 服务的日志文件。
- conf:存放 httpd 服务的各种配置文件,包括主配置文件 httpd.conf、增强配置子目录 extra 等。
- htdocs:存放网页文档,包括默认首页文件 index.html 等。
- module:存放 httpd 服务的各种模块文件。
7、优化执行路径(根据实际情况来定,可以不进行优化):
通过源码安装的 httpd 服务属于第三方服务,所以程序路径并不在默认的搜索路径中,如果现在要启动 Apache 的话,需要执行命令:/usr/local/httpd/bin/apachectl start, 也就是安装完成后 bin 目录下的程序控制文件的绝对路径,加上需要进行的操作即可。
那么,为了使这个服务使用起来更加方便些,可以进行执行路径优化,过程如下:
为相关程序添加符号链接:
这样,再执行相关命令时,就不用输入很长的路径了,如若想要启动服务,直接执行 /usr/local/bin/apachectl start 即可,但这样依旧没有控制系统服务那么方便,那么,还可以继续操作,添加 httpd 系统服务,有以下两种方法:
方法 1
复制 apachectl 文件到/etc/init.d/httpd, 然后编辑该文件,:
按照下面进行修改,然后保存退出:
添加系统服务:
至此,即可跟控制系统服务一样,使用 systemctl start/status/restart httpd 来控制 apache 服务了。
还有一种方法可以将它添加为系统服务,不过还要编辑配置文件,比较麻烦,可能可以对服务进一步的定义,个人觉得了解即可吧,没有什么特殊要求的话,采用上面的那种方法即可。
方法 2:
建立 httpd.service 配置文件(注意配置文件的路径,其中配置文件中写入的 apachectl 路径,需根据实际情况来定)
配置文件中的各配置项的作用如下所示:
两种方法各有各的好处,方法 2 可以对服务进行详细的控制定义,并且还可以使用systemctl enable httpd.service
来设置 httpd 服务开机自动启动,这是方法 1 无法实现的。
当服务的控制进行优化后,即可对 httpd 服务进行基本配置:
1、编辑 httpd 服务的主配置文件 httpd.conf
在末行模式下执行/ServerName,在附近添加一行内容:ServiceName www.aaa.com,用于设置网站对应的域名。如下:
进入末行模式查找ServerName:
修改 httpd.conf 文件的配置内容后,可以使用命令 apachectl - t 或 httpd -t 对配置内容进行语法检测,如若没有错误,将会显示如下:
2、部署网页文档:
对于新编译安装的 httpd 服务,网站根目录位于 /usr/local/httpd/htdocs
下,需要将 web 站点的网页文档复制或上传到此目录下。
3、查看 web 站点的访问情况
httpd 服务器使用了两种类型的日志:访问日志和错误日志。这两种日志的文件名分别为 acces_log 和 error_log,都在 /usr/local/httpd/logs 目录下。可以使用命令 tail -f /usr/local/httpd/logs/access_log 来动态查看网站访问情况。
4、最为主要的 httpd.conf 主配置文件
httpd.conf 中的注释行以“#”开头,剩下的则是设置行。根据配置所作用的范围不同,设置行又可分为全局配置、区域配置。每条全局配置都是一项独立的配置,不需要包含在其他任务区域中,常用的一些全局配置项作用如下:
除了全局配置项以外,httpd.conf 文件中的大多数配置时包括在区域内的。区域配置使用一对组合标记,限定了配置项的作用范围,如下:
如何在 Ubuntu 18.04 上安装和配置 Apache 2 Web 服务器 https://www.linuxidc.com/Linux/2018-11/155507.htm
: