Web服务器架设 搭建Web服务器详细步骤

第一次搭建Web服务器,很容易觉得步骤繁杂,完整跑通一次之后会发现核心就三样:一台机器、Web服务软件、存放网页文件的目录。剩下工作都是围绕这三样做配置和安全加固。

先说机器。本地电脑装虚拟机练手可以,云服务器也合适。云服务器自带公网IP,不用操心家庭宽带没有公网地址。基础配置就够用,1核1G运行静态站点或者轻量版WordPress完全没问题。操作系统优先选Ubuntu Server 22.04或者24.04,社区资料充足,遇到问题很容易找到解决方案。CentOS已经停止维护,新手不建议选用,Debian也能用,但部分软件包版本偏旧。

Web服务器架设 搭建Web服务器详细步骤

系统安装完成第一件事更新软件源。执行sudo apt update && sudo apt upgrade -y,这条命令执行完毕之后再安装其他软件,减少依赖冲突。新建普通用户,不要长期使用root账号操作,日常操作依靠sudo提权。修改SSH配置,关闭密码登录改用密钥认证,把默认22端口更换成其他端口,这些安全操作耗时不多,能拦截大量自动化扫描。

接着安装Web服务器程序。Nginx和Apache二选一,新手优先Nginx,配置简洁,静态文件处理性能好,占用内存更低。sudo apt install nginx -y,安装完成浏览器访问服务器IP,出现Nginx默认欢迎页面就代表服务正常运行。配置文件存放路径/etc/nginx/,站点配置文件放在sites-available/目录。启用站点的标准流程:在sites-available/编写配置文件,创建软链接到sites-enabled/,执行nginx -t校验语法,再执行systemctl reload nginx重载配置。Nginx默认网站根目录是/var/www/html/,把自己网页文件上传到这里,替换默认index.html即可。

数据库按需选择。纯静态站点不需要数据库,WordPress或是其他动态程序才需要。MySQL和MariaDB二选一,MariaDB属于MySQL分支,命令基本一致,安装包体积更小。sudo apt install mariadb-server -y,安装完成执行sudo mysql_secure_installation完成基础安全配置,设置root密码、删除匿名用户、禁止root账号远程登录。新建数据库和独立数据库用户,不要直接用root账号对接网站程序,只给这个用户分配对应数据库权限。

PHP是很多建站程序依赖的运行环境。Ubuntu系统安装PHP8.2或者8.3,sudo apt install php-fpm php-mysql php-curl php-gd php-mbstring php-xml -y。php-fpm是FastCGI进程管理器,Nginx依靠它处理PHP请求。安装完成之后Nginx站点配置需要增加一段location规则,把.php请求转发给php-fpm的socket,socket路径查看/etc/php/8.2/fpm/pool.d/www.conf。修改Nginx配置之后记得重载,网站根目录新建<?php phpinfo(); ?>测试文件,浏览器访问页面出现PHP信息面板,代表环境连通。

域名和SSL证书属于上线前准备。域名解析新增A记录指向服务器IP,等待解析生效之后修改Nginx配置里server_name为自己域名。SSL证书选用Let's Encrypt免费证书,certbot工具一条命令自动签发证书并且修改Nginx配置:sudo apt install certbot python3-certbot-nginx -y,之后执行sudo certbot --nginx -d yourdomain.com。工具会自动把HTTP请求重定向到HTTPS,证书到期自动续期,不用手动维护。

防火墙选用ufw管理,上手简单。sudo ufw allow OpenSSH,sudo ufw allow 'Nginx Full',接着执行sudo ufw enable。Nginx Full这条规则同时放行80和443端口,OpenSSH保留当前SSH连接。服务器如果部署在云平台,还要去云服务商控制台修改安全组入站规则,两边同时放行才能正常访问。

文件权限容易被忽略但很关键。Nginx以www-data用户运行,网站目录属主建议设为自己创建的普通用户,属组设置为www-data,目录权限755,文件权限644。需要写入的目录,像WordPress上传文件夹,单独修改属组为www-data,权限设775。不要为省事直接执行chmod 777,相当于开放全部访问权限。

最后部署网站。静态站点直接把文件上传到/var/www/html/或者自定义目录。WordPress就去官网下载tar.gz压缩包,解压放到网站目录,浏览器访问域名,按提示填写数据库信息。数据库名、用户名、密码、主机地址填写准确,数据库前缀不要使用默认wp_,自定义前缀。安装完成删除多余默认插件和主题,安装缓存插件和SSL插件,基础部署就完成。

整套流程顺利的话,一个下午就能从零部署到网站上线。最容易卡住的地方大多是Nginx和PHP-FPM的联动配置,还有文件权限问题。遇到502错误,先查看php-fpm服务状态systemctl status php8.2-fpm。403错误检查目录权限和Nginx配置内index指令。404错误核对root路径是否正确。掌握这些排查思路,后续更换服务器或是帮别人搭建环境,不用反复查找资料。

免责声明:本文提供的方法与建议仅供技术参考,实际部署效果受机房环境、运营商线路、系统配置等多重因素影响。请在专业人员指导下操作,因自行操作导致的业务损失本站不承担责任。

相关推荐