在CentOS上配置Apache服务器是一个常见的任务,以下是一些有用的技巧和步骤:
sudo yum update -y
sudo yum install httpd -y
sudo systemctl start httpd
sudo systemctl enable httpd
sudo systemctl status httpd
为了允许外部访问你的Apache服务器,需要配置防火墙以开放HTTP(端口80)和HTTPS(端口443):
sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --permanent --add-service=https
sudo firewall-cmd --reload
sudo mkdir -p /var/www/example.com/public_html
echo "Welcome to example.com" | sudo tee /var/www/example.com/public_html/index.html
/etc/httpd/conf/httpd.conf
,添加以下内容:<VirtualHost *:80>
ServerName example.com
DocumentRoot /var/www/example.com/public_html
ErrorLog "/var/log/httpd/example.com-error.log"
CustomLog "/var/log/httpd/example.com-access.log" combined
</VirtualHost>
sudo systemctl restart httpd
sudo mkdir -p /var/www/ip1
echo "IP based virtual host file for IP1." | sudo tee /var/www/ip1/index.html
sudo mkdir -p /var/www/ip2
echo "IP based virtual host file for IP2." | sudo tee /var/www/ip2/index.html
/etc/httpd/conf/httpd.conf
,添加以下内容:<VirtualHost 192.168.5.150:80>
DocumentRoot /var/www/ip1
ServerName 192.168.5.150
</VirtualHost>
<VirtualHost 192.168.5.151:80>
DocumentRoot /var/www/ip2
ServerName 192.168.5.151
</VirtualHost>
sudo systemctl restart httpd
为了启用HTTPS,你需要生成SSL证书并将其配置到Apache中,可以使用Let’s Encrypt免费获取SSL证书:
sudo yum install epel-release -y
sudo yum install certbot python2-certbot-apache -y
sudo certbot --apache -d yourdomain.com -d www.yourdomain.com
可以通过调整Apache的配置来提高其性能,例如启用KeepAlive、调整MaxRequestWorkers等参数:
KeepAlive On
MaxKeepAliveRequests 100
KeepAliveTimeout 5
如果Apache无法访问?
systemctl status httpd
netstat -tunlp | grep 80
tail -f /var/log/httpd/error_log
希望这些技巧能帮助你更好地配置和管理CentOS上的Apache服务器。