在CentOS 6.5系统中配置Web站点是许多服务器管理员的基本技能,本文将详细介绍从环境准备到站点部署的完整流程,帮助用户快速搭建稳定可靠的Web服务环境。

环境准备与基础安装
首先需要确保系统已更新至最新状态,通过执行yum update -y命令安装所有可用更新,接着安装Apache、MySQL和PHP(LAMP环境),这是最常用的Web服务组合,安装命令为yum install httpd mysql-server php php-mysql -y,安装完成后使用service httpd start启动Apache服务,并设置开机自启chkconfig httpd on,MySQL服务同样需要启动并设置开机自启,初始安装后需运行mysql_secure_installation脚本进行安全配置,包括root密码设置和匿名用户清理。
网站目录与权限配置
默认网站根目录位于/var/www/html,建议为每个站点创建独立目录以提升管理效率,例如可通过mkdir -p /var/www/example.com创建站点目录,并将网站文件上传至该目录,文件所有者需设置为Apache运行用户,通常为apache,使用命令chown -R apache:apache /var/www/example.com,目录权限应设置为755,文件权限为644,确保既能被Web服务器正确读取,又保障安全性,若需支持上传功能,需对上传目录设置777权限,但需谨慎使用。
虚拟主机配置
多站点管理需要配置虚拟主机,在/etc/httpd/conf.d/目录下创建配置文件,如example.com.conf如下:
<VirtualHost *:80>
ServerAdmin webmaster@example.com
DocumentRoot /var/www/example.com
ServerName example.com
ErrorLog logs/example.com_error.log
CustomLog logs/example.com_access.log combined
</VirtualHost>
配置完成后重启Apache服务service httpd restart,若需绑定多个域名,可在同一配置文件中添加ServerAlias指令,如ServerAlias www.example.com。
数据库配置
使用mysql -u root -p登录MySQL,创建数据库和专用用户,执行以下SQL命令:

CREATE DATABASE example_db; CREATE USER 'example_user'@'localhost' IDENTIFIED BY 'password'; GRANT ALL PRIVILEGES ON example_db.* TO 'example_user'@'localhost'; FLUSH PRIVILEGES;
随后在网站配置文件中修改数据库连接参数,确保应用程序能正确访问数据库。
SSL证书配置(可选)
如需HTTPS支持,可使用Let's Encrypt免费证书,首先安装Certbot工具yum install certbot python-certbot-apache -y,然后执行certbot --apache -d example.com -d www.example.com自动完成证书申请与配置,证书默认每90天自动续期,无需手动干预。
性能优化与安全加固
启用Apache的mod_defends模块防止常见攻击,在配置文件中添加:
<IfModule mod_deflate.c>
AddOutputFilterByType DEFLATE text/plain
AddOutputFilterByType DEFLATE text/html
AddOutputFilterByType DEFLATE text/xml
AddOutputFilterByType DEFLATE text/css
AddOutputFilterByType DEFLATE application/xml
AddOutputFilterByType DEFLATE application/xhtml+xml
AddOutputFilterByType DEFLATE application/rss+xml
AddOutputFilterByType DEFLATE application/javascript
</IfModule>
同时配置防火墙规则,仅开放必要端口(如80、443),使用iptables -I INPUT -p tcp --dport 80 -j ACCEPT等命令实现。
相关问答FAQs
Q1:如何解决CentOS 6.5中Apache无法启动的问题?
A:首先检查配置文件语法是否正确,使用apachectl configtest命令验证,常见错误包括端口冲突(80端口被占用)、Document路径不存在或权限不足,检查错误日志/var/log/httpd/error_log可定位具体问题,若提示权限错误,需确保目录所有者为apache用户且权限设置正确。

Q2:如何将网站从HTTP强制跳转到HTTPS?
A:在虚拟主机配置文件中添加以下重定向规则:
<VirtualHost *:80>
ServerName example.com
Redirect permanent / https://example.com/
</VirtualHost>
<VirtualHost *:443>
ServerName example.com
SSLEngine on
SSLCertificateFile /etc/letsencrypt/live/example.com/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/example.com/privkey.pem
DocumentRoot /var/www/example.com
</VirtualHost>
配置完成后重启Apache服务,所有HTTP访问将自动跳转至HTTPS。