5154

Good Luck To You!

CentOS安装Web站点后如何配置虚拟主机并绑定域名?

CentOS 作为一款稳定可靠的 Linux 发行版,常被用于搭建 Web 服务器,本文将详细介绍在 CentOS 系统中安装和配置 Web 站点的完整流程,从环境准备到服务部署,帮助用户快速上手。

CentOS安装Web站点后如何配置虚拟主机并绑定域名?

系统准备与更新

在开始安装 Web 服务前,确保系统处于最新状态,并关闭防火墙和 SELinux(简化配置,生产环境需谨慎处理),首先更新系统包:

sudo yum update -y

随后关闭防火墙:

sudo systemctl stop firewalld
sudo systemctl disable firewalld

临时关闭 SELinux:

sudo setenforce 0

若需长期关闭,可编辑 /etc/selinux/config 文件,将 SELINUX=enforcing 改为 SELINUX=disabled 后重启系统。

安装 Web 服务器

CentOS 常用的 Web 服务器包括 Apache 和 Nginx,这里以 Nginx 为例,介绍安装步骤,首先添加 EPEL 仓库(扩展软件包):

sudo yum install epel-release -y

然后安装 Nginx:

sudo yum install nginx -y

安装完成后启动 Nginx 并设置开机自启:

sudo systemctl start nginx
sudo systemctl enable nginx

通过浏览器访问服务器 IP 地址,若看到 Nginx 欢迎页面,说明安装成功。

配置虚拟主机

虚拟主机允许在一台服务器上托管多个网站,以创建 example.com 为例,首先创建网站目录:

sudo mkdir -p /var/www/example.com

设置目录权限:

CentOS安装Web站点后如何配置虚拟主机并绑定域名?

sudo chown -R nginx:nginx /var/www/example.com
sudo chmod -R 755 /var/www/example.com

创建测试页面:

echo "<h1>Welcome to example.com</h1>" | sudo tee /var/www/example.com/index.html

接下来配置 Nginx 虚拟主机,编辑 /etc/nginx/conf.d/example.com.conf 文件,添加以下内容:

server {
    listen 80;
    server_name example.com www.example.com;
    root /var/www/example.com;
    index index.html;
    location / {
        try_files $uri $uri/ =404;
    }
}

保存后检查 Nginx 配置语法并重启服务:

sudo nginx -t
sudo systemctl reload nginx

安装数据库(以 MySQL 为例)

大多数 Web 应用需要数据库支持,这里以安装 MySQL 8.0 为例,首先添加 MySQL 官方仓库:

sudo yum localinstall https://dev.mysql.com/get/mysql80-community-release-el7-7.noarch.rpm -y

安装 MySQL 服务器:

sudo yum install mysql-community-server -y

启动 MySQL 并设置开机自启:

sudo systemctl start mysqld
sudo systemctl enable mysqld

首次启动后,需获取临时密码并完成安全配置:

sudo grep 'temporary password' /var/log/mysqld.log
sudo mysql_secure_installation

根据提示设置 root 密码并移除匿名用户等。

安装 PHP(可选)

若网站使用 PHP(如 WordPress),需安装 PHP 及相关扩展,以 PHP 7.4 为例:

sudo yum install php php-fpm php-mysql php-gd php-mbstring -y

启动 PHP-FPM 并设置开机自启:

CentOS安装Web站点后如何配置虚拟主机并绑定域名?

sudo systemctl start php-fpm
sudo systemctl enable php-fpm

修改 Nginx 配置以支持 PHP,在虚拟主机配置中添加:

location ~ \.php$ {
    include fastcgi_params;
    fastcgi_pass 127.0.0.1:9000;
    fastcgi_index index.php;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}

重启 Nginx 使配置生效。

部署 Web 应用

以 WordPress 为例,下载并解压到网站目录:

cd /var/www/example.com
sudo wget https://wordpress.org/latest.tar.gz
sudo tar -xzvf latest.tar.gz
sudo mv wordpress/* .
sudo rm -rf wordpress latest.tar.gz

设置目录权限并访问网站,完成 WordPress 安装向导。

配置 HTTPS(可选)

为网站启用 HTTPS 可提升安全性,使用 Certbot 申请免费 Let's Encrypt 证书:

sudo yum install certbot python3-certbot-nginx -y
sudo certbot --nginx -d example.com -d www.example.com

根据提示配置自动续期。

监控与维护

定期备份数据库和网站文件,监控系统资源,可使用 crontab 设置定时任务:

0 2 * * * /usr/bin/mysqldump -u root -p[password] database_name > /backup/$(date +\%Y\%m\%d).sql

FAQs

Q1:如何查看 Nginx 的错误日志?
A1:Nginx 错误日志默认位于 /var/log/nginx/error.log,可通过命令 sudo tail -f /var/log/nginx/error.log 实时查看。

Q2:如何重置 MySQL root 密码?
A2:停止 MySQL 服务(sudo systemctl stop mysqld``),跳过权限表启动(sudo mysqld_safe --skip-grant-tables &),登录后执行FLUSH PRIVILEGES;`,再修改密码,最后重启服务。

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

«    2025年12月    »
1234567
891011121314
15161718192021
22232425262728
293031
控制面板
您好,欢迎到访网站!
  查看权限
网站分类
搜索
最新留言
    文章归档
    网站收藏
    友情链接

    Powered By Z-BlogPHP 1.7.3

    Copyright Your WebSite.Some Rights Reserved.