菜鸟科技网

如何在vps上搭建网站,VPS建站步骤有哪些?

在VPS(虚拟专用服务器)上搭建网站是一个系统性的过程,涉及服务器环境配置、网站部署、安全优化等多个环节,以下将详细讲解从准备工作到网站上线的完整步骤,帮助用户顺利完成搭建。

如何在vps上搭建网站,VPS建站步骤有哪些?-图1
(图片来源网络,侵删)

准备工作

在开始搭建前,需明确以下几点:

  1. 选择VPS服务商:根据需求选择可靠的VPS提供商,如阿里云、腾讯云、 Vultr、DigitalOcean等,考虑配置(CPU、内存、带宽)、地域、价格及售后服务。
  2. 购买VPS并获取信息:完成购买后,登录服务商控制台获取VPS的IP地址、root密码(或初始登录凭证)、SSH端口号(默认22)。
  3. 域名解析:若使用自定义域名,需在域名管理后台添加A记录,将域名指向VPS的IP地址,等待DNS解析生效(通常几分钟到24小时)。

连接VPS并初始化环境

通过SSH连接服务器

使用终端工具(如Windows的PuTTY、Mac/Linux的Terminal)连接VPS,命令格式为:

ssh root@你的VPS_IP -p 端口号

首次登录需确认主机密钥(输入yes),然后输入root密码登录,建议后续创建新用户并禁用root登录,提升安全性。

更新系统软件包

登录后,执行以下命令更新系统及软件包:

如何在vps上搭建网站,VPS建站步骤有哪些?-图2
(图片来源网络,侵删)
  • Ubuntu/Debian系统
    apt update && apt upgrade -y
  • CentOS/RHEL系统
    yum update -y

配置防火墙

根据系统类型开放必要端口(如80 HTTP、443 HTTPS、22 SSH):

  • Ubuntu/Debian(使用UFW)
    ufw allow 22/tcp
    ufw allow 80/tcp
    ufw allow 443/tcp
    ufw enable
  • CentOS(使用firewalld)
    firewall-cmd --permanent --add-port=22/tcp
    firewall-cmd --permanent --add-port=80/tcp
    firewall-cmd --permanent --add-port=443/tcp
    firewall-cmd --reload

安装Web服务器环境

常见的Web环境组合有LAMP(Linux+Apache+MySQL+PHP)、LNMP(Linux+Nginx+MySQL+PHP),此处以LNMP为例(Nginx性能更优,适合高并发场景)。

安装Nginx

执行以下命令安装Nginx:

  • Ubuntu/Debian
    apt install nginx -y
  • CentOS
    yum install nginx -y

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

    如何在vps上搭建网站,VPS建站步骤有哪些?-图3
    (图片来源网络,侵删)
    systemctl start nginx
    systemctl enable nginx

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

安装MySQL数据库

MySQL用于存储网站数据:

  • Ubuntu/Debian
    apt install mysql-server -y
  • CentOS
    yum install mysql-server -y

    安装后启动MySQL并安全配置:

    systemctl start mysqld
    systemctl enable mysqld
    mysql_secure_installation  # 按提示设置root密码、移除匿名用户等

安装PHP及扩展

PHP用于处理动态网页内容:

  • Ubuntu/Debian
    apt install php-fpm php-mysql php-gd php-xml php-mbstring -y  # 根据需求安装扩展
  • CentOS
    yum install php-fpm php-mysqlnd php-gd php-xml php-mbstring -y

    启动PHP-FPM并设置自启:

    systemctl start php-fpm
    systemctl enable php-fpm

配置Nginx虚拟主机

虚拟主机用于让多个网站在同一台服务器上运行,以下以配置域名example.com为例:

  1. 创建网站目录

    mkdir -p /var/www/example.com
  2. 设置目录权限

    chown -R www-data:www-data /var/www/example.com  # Ubuntu/Debian
    chown -R nginx:nginx /var/www/example.com       # CentOS
    chmod -R 755 /var/www/example.com
  3. 创建测试页面

    nano /var/www/example.com/index.php
    <?php
    phpinfo();
    ?>

    保存并退出(Ctrl+O → Enter → Ctrl+X)。

  4. 配置Nginx配置文件

    nano /etc/nginx/conf.d/example.com.conf

    输入以下内容:

    server {
        listen 80;
        server_name example.com www.example.com;
        root /var/www/example.com;
        index index.php index.html;
        location / {
            try_files $uri $uri/ =404;
        }
        location ~ \.php$ {
            include snippets/fastcgi-php.conf;
            fastcgi_pass unix:/var/run/php/php8.1-fpm.sock;  # 根据PHP版本调整路径
        }
    }
  5. 重启Nginx生效

    nginx -t  # 检查配置是否正确
    systemctl restart nginx

部署网站程序

可通过以下方式部署网站:

  1. 手动上传文件:使用SCP、SFTP工具(如FileZilla)将网站源码上传至/var/www/example.com目录。
  2. Git克隆:若代码托管在Git仓库,可安装Git后克隆:
    apt install git -y  # Ubuntu/Debian
    git clone https://github.com/your-repo.git /var/www/example.com
  3. 一键部署脚本:使用宝塔面板、aaPanel等工具,通过图形化界面快速部署(适合新手)。

配置SSL证书(HTTPS)

为网站启用HTTPS可提升安全性,推荐使用Let’s Encrypt免费证书:

  1. 安装Certbot

    apt install certbot python3-certbot-nginx -y  # Ubuntu/Debian
    yum install certbot python3-certbot-nginx -y  # CentOS
  2. 申请证书

    certbot --nginx -d example.com -d www.example.com

    按提示输入邮箱并同意条款,Certbot会自动配置Nginx并启用HTTPS。

  3. 自动续期
    Certbot会自动设置续期任务,可通过以下命令测试:

    certbot renew --dry-run

安全优化与维护

  1. 定期更新系统:执行apt upgradeyum update更新软件包。
  2. 安装安全工具:如Fail2ban(防暴力破解)、ClamAV(杀毒软件)。
  3. 备份数据:使用rsyncmysqldump定期备份网站文件和数据库,可设置定时任务(cron)自动执行。
  4. 监控服务器状态:安装监控工具(如Netdata、Zabbix),实时查看CPU、内存、磁盘使用情况。

相关问答FAQs

问题1:搭建网站后访问域名显示404错误,如何解决?
解答:首先检查Nginx配置文件中的root路径是否正确指向网站目录,确保index文件存在(如index.php);其次检查目录权限是否为755,文件所有者是否为Web服务器用户(如www-datanginx);最后使用nginx -t命令检查配置语法是否正确,若有错误根据提示修复并重启Nginx。

问题2:如何通过SSH密钥登录VPS,提升安全性?
解答:在本地终端生成SSH密钥对(命令:ssh-keygen -t rsa -b 4096),公钥默认保存在~/.ssh/id_rsa.pub,将公钥内容复制到VPS的~/.ssh/authorized_keys文件中(若文件不存在需先创建),设置权限为600(chmod 600 ~/.ssh/authorized_keys),然后在VPS上禁用密码登录(编辑/etc/ssh/sshd_config,将PasswordAuthentication no取消注释),重启SSH服务(systemctl restart sshd),此后登录仅需私钥,无需密码,安全性大幅提升。

原文来源:https://www.dangtu.net.cn/article/9014.html
分享:
扫描分享到社交APP
上一篇
下一篇