CentOS是一种开源的操作系统,其许多功能都是基于Linux内核构建的。其中,Apache是一个流行的开源Web服务器,可以在CentOS上安装和运行。本文将详细介绍如何在CentOS7下搭建Apache服务器的步骤。
在开始安装和配置Apache之前,需要确保以下条件已经满足:
- 确认CentOS系统已经完全安装
- 确认系统已经联网
- 确认系统的软件包管理器已经更新
首先需要更新CentOS系统的软件包管理器。运行以下命令:
sudo yum update
该命令将搜索并更新到可用的所有软件包。
Apache是一个免费的开源Web服务器,可以在CentOS上通过以下命令进行安装:
sudo yum install httpd
该命令将搜索和安装Apache服务器及其相关依赖项。
安装完成后,需要启动Apache服务器并启用它随系统启动。运行以下命令:
sudo systemctl start httpd.service
sudo systemctl enable httpd.service
第一个命令将启动Apache服务器。第二个命令将启用Apache服务器的自启动功能。
运行以下命令以确认Apache服务器是否正在运行:
sudo systemctl status httpd.service
如果服务器正在运行,则输出将类似于以下内容:
● httpd.service - The Apache HTTP Server
Loaded: loaded (/usr/lib/systemd/system/httpd.service; enabled; vendor preset: disabled)
Active: active (running) since Mon 2020-10-13 14:34:38 UTC; 3s ago
Docs: man:httpd.service(8)
Main PID: 10977 (httpd)
Status: "Total requests: 0; Current requests/sec: 0; Current traffic: 0 B/sec"
CGroup: /system.slice/httpd.service
├─10977 /usr/sbin/httpd -DFOREGROUND
├─10978 /usr/sbin/httpd -DFOREGROUND
├─10979 /usr/sbin/httpd -DFOREGROUND
├─10980 /usr/sbin/httpd -DFOREGROUND
├─10981 /usr/sbin/httpd -DFOREGROUND
└─10982 /usr/sbin/httpd -DFOREGROUND
CentOS的防火墙默认情况下会阻止对HTTP服务器的访问。为了使服务器对外可见,需要将HTTP端口添加到防火墙的例外列表中。运行以下命令:
sudo firewall-cmd --permanent --add-port=80/tcp
sudo firewall-cmd --permanent --add-port=443/tcp
sudo firewall-cmd –reload
这将允许传入的HTTP流量访问端口80和传入的HTTPS流量访问端口443。-reload选项将重新加载防火墙以使更改生效。
在Apache中可以设置虚拟主机,这有助于提高服务器的性能和灵活性。创建一个虚拟主机的步骤如下:
- 首先,需要为服务器创建一个目录。例如:
sudo mkdir /var/www/example.com
- 接下来,需要给该目录设置权限:
sudo chown -R apache:apache /var/www/example.com
sudo chmod -R 755 /var/www/example.com
- 接下来,需要将以下内容添加到Apache的主配置文件中的虚拟主机块中(通常在/etc/httpd/conf/目录中):
<virtualhost *:80></virtualhost>
ServerAdmin webmaster@example.com
DocumentRoot /var/www/example.com
ServerName example.com
ServerAlias www.example.com
在该文件的尾部添加“IncludeOptional /etc/httpd/conf.d/*.conf”行,以确保Apache加载Config subdirectories中的任何其他虚拟主机配置文件,如果存在的话。
现在可以通过在Web浏览器中输入服务器的IP地址或域名来测试Apache服务器。如果一切都设置正确,应该会看到Apache默认网页的欢迎消息。可以将此文件作为测试服务器是否正确运行的基准。
可以在Apache上启用SSL以增强服务器的安全性。运行以下命令以安装SSL支持:
sudo yum install mod_ssl openssl
完成安装后,使用以下命令启用Apache SSL模块:
sudo systemctl start httpd.service
sudo systemctl enable httpd.service
然后运行以下命令生成SSL证书:
sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/pki/tls/private/example.com.key -out /etc/pki/tls/certs/example.com.crt
其中“example.com”应替换为服务器使用的实际域名。
编辑Apache的主配置文件以包含SSL证书,将以下代码添加到虚拟主机块中:
SSLEngine on
SSLCertificateFile /etc/pki/tls/certs/example.com.crt
SSLCertificateKeyFile /etc/pki/tls/private/example.com.key
重启Apache以使更改生效:
sudo systemctl restart httpd.service
最后,可以通过在Web浏览器中输入“https://example.com”来测试虚拟主机的SSL支持。如果一切设置正确,应该会看到安全的SSL连接。
在CentOS7上搭建Apache服务器需要多个步骤,但这并不是很困难。遵循上述步骤,可以轻松地在服务器上安装和设置Apache。此外,虚拟主机和SSL支持可以提高服务器的性能和安全性,因此应该在服务器上启用它们。
版权属于:周晨
本文链接:https://wenziju.com/index.php/archives/1334/
本博客所有文章除特别声明外,均采用知识共享署名-非商业性使用-相同方式共享 3.0 中国大陆许可协议。转载请注明出处!
1 条评论
想想你的文章写的特别好www.jiwenlaw.com