Linux 安装Apache

安裝Apache

1
sudo yum install httpd

启动Apache,并且设定为开机自动启动

1
2
sudo systemctl start httpd
sudo systemctl enable httpd

允许http服务通过防火墙
CentOS 7的内置防火墙默认设置为阻止网络流量

1
2
3
4
5
sudo firewall-cmd --add-service=http --permanent
sudo firewall-cmd --add-service=https --permanent
#sudo firewall-cmd --permanent --add-port=80/tcp
#sudo firewall-cmd --permanent --add-port=443/tcp
sudo systemctl restart firewalld

重启Apache

1
sudo systemctl restart httpd.service

配置文件

/etc/httpd/conf/httpd.conf

1
2
3
4
5
6
7
8
9
10
11
DocumentRoot "/var/www/html/example.com/public_html"
...
<IfModule prefork.c>
StartServers 5
MinSpareServers 20
MaxSpareServers 40
MaxRequestWorkers 256
MaxConnectionsPerChild 5500
</IfModule>

/etc/httpd/conf.d/vhost.conf

1
2
3
4
5
6
7
8
9
10
NameVirtualHost *:80
<VirtualHost *:80>
ServerAdmin webmaster@example.com
ServerName example.com
ServerAlias www.example.com
DocumentRoot /var/www/html/example.com/public_html/
ErrorLog /var/www/html/example.com/logs/error.log
CustomLog /var/www/html/example.com/logs/access.log combined
</VirtualHost>

创建上面引用的目录:

1
sudo mkdir -p /var/www/html/example.com/{public_html,logs}

检查Apache的状态

1
sudo systemctl status httpd

停止Apache

1
sudo systemctl stop httpd

参考:

https://www.linode.com/docs/web-servers/apache/install-and-configure-apache-on-centos-7/
https://www.liquidweb.com/kb/how-to-install-apache-on-centos-7/
SELinux:https://www.brilliantcode.net/170/centos-7-install-apache-httpd/
SELinux:https://www.brilliantcode.net/145/centos-7-check-selinux-status-enabled-or-not/