新手快速掌握centos vps建站教程从零搭建到性能优化

1. 购买与准备VPS
1. 购买CentOS系统的VPS(推荐CentOS 7/8),记录IP和root密码。登录前在本地生成SSH密钥(ssh-keygen)。在Linux/macOS: ssh-copy-id root@IP,Windows使用PuTTY/WinSCP上传密钥。首次登录:ssh root@IP。
2. 基础系统更新与用户权限
2. 更新系统:yum update -y(CentOS7/8)。创建普通管理员:adduser user; passwd user; usermod -aG wheel user。禁止root远程登录:编辑/etc/ssh/sshd_config,设置 PermitRootLogin no,重启 sshd: systemctl restart sshd。
3. 防火墙与SELinux配置
3. 开放HTTP/HTTPS端口:firewall-cmd --permanent --add-service=http; firewall-cmd --permanent --add-service=https; firewall-cmd --reload。若使用iptables请相应添加规则。若启用SELinux,允许PHP/NGINX网络访问:setsebool -P httpd_can_network_connect on。
4. 安装Nginx/Apache和PHP
4. 推荐Nginx:yum install epel-release -y; yum install nginx -y; systemctl enable --now nginx。PHP使用php-fpm:yum install php php-fpm php-mysqlnd -y; systemctl enable --now php-fpm。在Nginx站点配置中使用 fastcgi_pass unix:/var/run/php-fpm/www.sock。
5. 安装MariaDB并初始化
5. 安装:yum install mariadb-server -y; systemctl enable --now mariadb。执行 mysql_secure_installation 完成root密码、删除匿名用户、移除测试库。创建数据库与用户:mysql -u root -p; CREATE DATABASE dbname; CREATE USER 'web'@'localhost' IDENTIFIED BY '密码'; GRANT ALL ON dbname.* TO 'web'@'localhost'; FLUSH PRIVILEGES;
6. 域名解析与虚拟主机配置
6. 在域名管理控制台添加A记录指向VPS公网IP。Nginx示例server块:server_name example.com www.example.com; root /var/www/example; index index.php index.html; location ~ \.php$ { fastcgi_pass unix:/var/run/php-fpm/www.sock; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; }
7. HTTPS:Let's Encrypt 自动签发
7. 安装certbot(CentOS7示例):yum install certbot python2-certbot-nginx -y,然后运行 certbot --nginx -d example.com -d www.example.com,按提示获取/自动安装证书并设置自动续期(系统会添加cron或systemd定时任务)。
8. 性能优化(Nginx/PHP/MySQL层)
8. Nginx:worker_processes auto; worker_connections 1024; 开启sendfile、tcp_nopush、gzip(gzip_types text/css application/javascript...)。启用缓存:fastcgi_cache或proxy_cache;开启HTTP/2。PHP:启用opcache(php.ini),调整memory_limit、pm.max_children等。MariaDB:调整innodb_buffer_pool_size(约物理内存的50%-70%),用mysqltuner.pl定期优化。
9. 额外优化与监控备份
9. 使用Redis或Memcached作为对象缓存;部署CDN(Cloudflare)减轻带宽。启用Swap(若内存小):fallocate -l 1G /swapfile; chmod 600 /swapfile; mkswap /swapfile; swapon /swapfile; 并添加到/etc/fstab。备份:mysqldump -u root -p dbname > db.sql,网站文件用rsync或tar上传到远程存储。监控可用htop, iostat, netstat,生产可用Prometheus+Grafana。
10. 常见故障排查问答一
10. 问:网站访问报502 Bad Gateway,如何排查? 答:先检查php-fpm是否运行:systemctl status php-fpm;查看/var/log/php-fpm/error.log和Nginx错误日志/var/log/nginx/error.log;确认fastcgi_pass配置与php-fpm监听socket或端口匹配,权限正确(nginx用户对socket有访问权),重启php-fpm和nginx。
11. HTTPS与证书续期问答二
11. 问:Let's Encrypt 证书过期怎么办? 答:certbot 默认会设置自动续期,可手动检测:certbot renew --dry-run;若自动续期失败,查看 /var/log/letsencrypt/ 日志,检查80端口是否被阻止或域名解析是否正确,按日志修复后重新执行续期命令。
12. 性能调优快速建议问答三
12. 问:新手如何快速提升页面响应速度? 答:优先做三件事:1) 在Nginx启用gzip和缓存(fastcgi_cache或使用CDN);2) 为PHP启用OPcache并调整PHP-FPM进程数;3) 使用CDN和开启HTTP/2,静态资源设置长期缓存头。逐项测试(ab/wrk)观察改动效果。
- 最新文章
-
行业门户选择云建站需要多少钱 服务商报价和合同注意事项2026-05-31
-
南平小程序开发多少钱 从设计到上线全流程成本解析2026-05-31
-
衡水网站建设公司怎么选 实战指南包含报价参考项目周期与交付标准2026-05-31
- 相关文章
-
独立站搭建实用指南centos vps建站教程与运维技巧2026-05-31
-
企业搭建站点的香港云服务器建站流程图全流程实操手册2026-05-31
-
如何根据香港云服务器建站流程图快速完成网站部署与备案2026-05-31