宝塔Linux怎么部署项目到服务器,新手如何部署项目?

登录宝塔Linux面板,完成环境安装、添加站点、上传代码、配置数据库和伪静态这五步,项目就能成功部署上线。整个过程不需要敲复杂的Nginx配置命令,全程可视化操作,一般新手在半小时内就能跑通第一个项目。

部署前需要准备什么材料

动手之前,先把材料备齐,免得中途卡壳。

宝塔面板 给新手看的超详细的在linux系统里搭建网站全过程
加载中
宝塔面板 给新手看的超详细的在linux系统里搭建网站全过程
写
写代码的猫叔
11.9万--
原视频地址
  • 一台Linux服务器(CentOS 7.x 或 Ubuntu 20.04以上版本均可,国内服务器需要先完成ICP备案)
  • 一个已解析到服务器IP的域名(如果用IP访问,可以跳过这步,但生产环境强烈建议用域名)
  • 服务器root密码,或者能sudo提权的普通用户
  • 项目源码压缩包,或已上传到代码仓库(Git/Gitee)

域名解析建议提前在DNS服务商后台做好A记录,指向服务器公网IP,解析生效需要几分钟到几小时不等,本地ping一下域名能返回服务器IP就代表生效了。

宝塔Linux面板安装与环境初始化

宝塔面板有官方的一键安装脚本,不同系统命令略有差异,CentOS使用:

yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_1.0.sh && bash install.sh

Ubuntu/Debian使用:

wget -O install.sh http://download.bt.cn/install/install-ubuntu_6.0.sh && bash install.sh

安装过程大约需要2-5分钟,完成后屏幕会展示面板地址、默认用户名和密码,记下这些信息,第一次登录时需要修改默认账号密码。

登录面板后,系统会弹出推荐安装环境的选择框,根据项目类型来选:

项目类型 推荐环境组合 说明
PHP项目(WordPress、Laravel) LNMP(Nginx+MySQL+PHP) 兼容性最好,性能均衡
Java项目(Spring Boot、Jar包) 只需Nginx + 手动安装JDK 面板环境只负责转发请求
Python项目(Django、Flask) Nginx + Python项目管理器 使用面板的Python模块管理
静态网站(HTML、Vue打包文件) Nginx即可,不需要数据库 最简单,纯静态文件托管

行业共识认为,LNMP组合是最常用的部署选项,新手直接装LNMP就行,里面包含了Nginx、MySQL、PHP-FPM三大件,覆盖大部分场景。

添加站点并上传项目代码

环境装好后,进入面板首页就能看到站点管理入口,这里把宝塔面板部署网站的完整流程拆开讲,一步步来。

创建站点并绑定域名

点击左侧菜单的网站,再点添加站点,在弹出的表单里填写:

  • 域名:填你的域名,比如www.example.com,如果需要同时支持不带www的域名,两个都填上,用空格分隔
  • 根目录:默认会生成/www/wwwroot/你的域名,保持默认即可
  • 创建数据库:PHP项目建议勾选,自动生成一个MySQL数据库,Java或静态项目可以不勾
  • PHP版本:选你项目要求的版本,面板里可以装多个PHP版本切换

提交后,面板会自动创建站点目录和对应的Nginx配置,此时用浏览器访问域名,能看到宝塔的默认欢迎页,就说明站点已经正常工作了。

上传代码的三种方式

代码上传根据开发环境不同,有几种常见姿势:

压缩包上传解压(最常用)

本地把项目压缩成zip包,打开宝塔的文件菜单,进入站点根目录,点击上传,选中zip包上传,上传完成后右键压缩包,点解压,然后把文件移动到根目录下,注意Linux权限问题,目录权限设置为755、文件设置为644比较稳妥。

从Git仓库拉取

如果项目在GitHub、Gitee上,服务器上安装好Git后,在文件管理里打开根目录,使用终端面板执行:

git clone https://gitee.com/你的仓库地址/项目名.git .

拉取到本地后,切换分支、更新代码都很方便,后续上线迭代也用这套流程,生产环境建议使用部署密钥或Personal Access Token,避免账号密码泄露。

宝塔远程同步插件

对于多台服务器同步或跨机房部署的场景,宝塔应用商店里有免费的宝塔同步工具,配置好目标服务器信息后,可以实现目录级别的自动同步,这个场景适合项目访问量较大、需要多节点部署的情况。

设置站点运行目录

ThinkPHP、Laravel这类框架的入口文件在public子目录,如果你的项目也是这样,进入网站设置,找到网站目录页签,把运行目录指向/public,同时关闭防跨站攻击功能(open_basedir),否则会出现权限报错。

数据库创建与导入

PHP项目基本离不开数据库,在面板的数据库菜单里,点击添加数据库,填写数据库名、用户名、密码,字符集选择utf8mb4(兼容emoji和中文)。

如果之前有本地数据库备份SQL文件,添加完成后进入phpMyAdmin(面板自带),选择你的数据库,点击导入,上传SQL文件执行,也可以使用命令行导入:

mysql -u数据库用户名 -p密码 数据库名 < /www/wwwroot/你的站点/backup.sql

导入完成后,找到项目的.env或数据库配置文件,把数据库连接信息替换成刚才创建的账号,这一步很容易漏,改完后记得重启一下PHP服务让配置生效。

伪静态规则与Nginx配置

配置伪静态

大部分框架都依赖伪静态重写,在网站设置里切换到伪静态页签,宝塔内置了常用框架的规则模版,比如ThinkPHP、Laravel、WordPress,直接下拉选中保存即可。

如果你的框架不在列表里,可以参考官方文档手动添加,一般只需要把URL重写到index.php入口文件,配置错误的表现是除首页外其他页面全部404,这时候优先检查伪静态规则。

设置SSL证书

HTTP时代已经过去,部署HTTPS是标配操作,在网站设置的SSL页签里,选择Let’s Encrypt免费证书,勾选你的域名,申请成功后自动部署。

证书类型对比:

证书类型 成本 适用范围
Let’s Encrypt 免费 小型站点、测试环境,90天自动续期
简米云免费证书 免费 国内服务器,一年有效期
商业付费证书 几百至数千元/年 电商、金融、政企网站

证书部署后,开启右上角的强制HTTPS开关,所有HTTP请求自动跳转到HTTPS,浏览器地址栏的小锁标志出现,就说明配置成功了。

部署后的验证与常见问题排查

确认服务正常启动

项目部署好后,访问域名测试各个页面,同时看一眼面板首页的资源监控,CPU和内存占用在正常范围就问题不大。

如果页面显示502 Bad Gateway,常见原因有:

  • PHP-FPM进程未启动,去服务里手动启动
  • 运行目录配置错误,检查public路径
  • PHP版本与项目要求不符,切换到正确的版本

显示504 Gateway Timeout则是后端服务响应超时,Java项目或Python项目要检查对应的服务进程是否存活,可以执行ps aux | grep java或ps aux | grep gunicorn来确认。

日志排查法

面板的网站菜单里点击站点名称,可以看到访问日志和错误日志,日志文件位于/www/wwwlogs/目录下,错误日志是排查问题的第一手资料,看日志时关注PHP报错信息和Nginx的状态码,比盲目搜索有针对性得多。

Q&A:宝塔Linux面板部署项目常见疑问

宝塔部署项目需要熟悉Linux命令吗?

基础操作完全不需要,面板的可视化界面覆盖了文件管理、数据库、站点配置等绝大多数场景,但掌握基本的cd、ls、vim命令,会看日志文件,能让你在遇到问题时多一条排查路径,生产环境上出了问题,最终还是要靠命令行解决的。

宝塔部署网站后备案号怎么放?

国内服务器部署的域名必须备案,同时要在网页底部添加备案号并链接到工信部备案系统(beian.mit.gov.cn),宝塔面板本身不自动添加备案信息,需要你在网站页脚手工加上这段文字,未按规定展示备案号,接入商检测到后会暂停域名解析服务。

一个服务器可以部署多个项目吗?

可以,每个站点独立绑定不同域名或端口,共用一个服务器资源,宝塔支持创建任意数量的站点,每个站点有独立的根目录、配置文件和日志,需要注意服务器的内存和带宽是否够用,PHP-FPM进程和数据库连接数都有上限,项目多了之后要留意资源占用情况,部署多个项目的配置文件和SSL证书都是独立的,互不影响。

首发原创文章,作者:王坚‌,如若转载,请注明出处:https://idctop.com/article/797606.html

赞 (0)
上一篇 2026年11月16日 05:37
下一篇 2026年11月16日 05:38

相关推荐

  • arma3服务器延迟高怎么解决,原因是什么?

    开篇直接给答案ARMA3服务器延迟高,绝大多数情况下不是你的网络不行,而是你连接了错误类型的服务器,或者你的电脑配置拖累了数据处理速度,先切换到你所在地区的官方服务器或高配置社区服,把视野距离和网络参数调对,延迟能立刻下降一半以上,arma3延迟高和卡顿怎么区分很多玩家把“延迟高”和“掉帧卡顿”混为一谈,这会导……

    程序编程 2026年11月16日
    300
  • 进cf连接服务器失败如何解决,是什么原因?

    进cf出现连接服务器失败怎么办啊,先别急着重启电脑,按照网络自检、文件修复、驱动更新、服务器状态查询这个顺序排查,绝大多数问题都能自己解决,不用花钱找人修,网络环境自检:解决连接服务器失败的第一步CF对网络的敏感程度在同类游戏里是出了名的,相当一部分玩家遇到的连接服务器失败,根源不在游戏本身,而在本地网络环境……

    2026年10月13日
    800
  • PS4怎么查看自己服务器?,国服还是港服怎么选?

    在PS4上查看自己是什么服务器,最快的方法就是打开“设置”→“账号管理”→“账户信息”,找到“国家/地区”一栏,显示香港就是港服,显示日本就是日服,显示美国就是美服,很多玩家从朋友手里收PS4,或者注册账号时随手选了地区,时间久了根本不知道自己该去哪个服买游戏,其实PS4没有独立的“服务器选择”功能,服务器跟着……

    2026年10月6日
    600
  • 服务器IP怎么禁止外网访问?,外网无法访问服务器IP怎么设置

    服务器的IP地址外网访问不了,核心原因通常是IP类型不对、防火墙拦截或端口未放行,而不是IP本身出了问题, 你不需要换服务器,也不需要干等着客服回复,按下面的顺序一步步查,大概率能解决,为什么服务器IP地址外网访问不了?先分清这几种情况很多人的第一反应是“IP被封了”,实际上配置问题更常见,业内专家指出,相当一……

    程序编程 2026年10月24日
    300
  • Excel表格如何快速去除重复项?一键筛选不重复数据

    在Excel中实现不重复数据录入,最稳妥且高效的方法是结合“数据验证”功能与“条件格式”进行双重约束,既能从源头拦截重复项,又能通过视觉高亮实时提醒,彻底告别手动核对的繁琐,处理重复数据是职场办公中的高频痛点,无论是整理客户名单、登记库存信息,还是汇总项目进度,一旦允许重复录入,后续的数据透视和统计分析就会彻底……

    2026年7月5日
    21500
  • MC御空饰品在服务器怎么用?,我的世界御空饰品怎么获得?

    御空饰品在服务器里的实际落位方式MC御空饰品在服务器中使用,核心就三件事:服务端装对插件版本、玩家客户端饰品权限开对、飞行状态与服务端反作弊不打架, 把这三步走通,剩下的就是按需调参数,而不是反复折腾“为什么飞不起来”,为什么服务端与客户端必须双端对齐御空饰品本质上是一套“客户端渲染+服务端判定”的飞行类扩展……

    程序编程 2026年11月13日
    300
  • 服务器IP被屏蔽了怎么办,服务器IP被屏蔽如何快速解决?

    服务器IP被屏蔽别慌,先分清是被谁屏蔽、屏蔽在哪一层,再按“临时解封→日志溯源→规则调整→长效防护”的顺序处理,多数情况半小时内能恢复访问,先搞清楚:IP被屏蔽的三种常见场景服务器IP被屏蔽这事,我几乎每周都要帮人排查,很多朋友一上来就慌,其实大多数屏蔽都不是永久性的,关键是先定位问题出在哪个环节,本地网络或运……

    程序编程 2026年11月8日
    1000
  • 精灵宝可梦go服务器满了为何进不去,等待多久才能恢复

    先别反复点登录,宝可梦GO提示“服务器满了”,多数时候是区域登录网关限流、账号验证排队和本地网络路径拥堵叠加出来的结果,按“查官方状态、重置本地网络、换登录方式、错峰等待”的顺序处理,通常比删游戏重装更有效,宝可梦go服务器满了进不去怎么办?先分清“真满”和“假满”很多人看到“服务器满了”就默认Niantic机……

    程序编程 2026年11月13日
    400
  • Excel表格电话号码显示不全怎么办,Excel怎么设置显示完整数字?

    Excel 电话号码显示问题及解决方法在 Excel 中处理电话号码时,经常会遇到两个核心问题:前导零(0)自动消失以及长数字显示为科学计数法(如 1.38E+10),这是因为 Excel 默认将输入的数字识别为“数值”类型,而数学运算中开头的 0 是没有意义的,以下是针对不同场景的专业解决方案:防止前导零(0……

    2026年7月12日
    21000
  • 我的世界btr怎么在服务器里用?,详细步骤是什么

    BTR 在服务器里能不能用,关键看它属于哪种形态:插件形态直接丢进 plugins 目录重启就行,玩家端什么都不用装;模组形态则要求服务端和每个玩家客户端的加载器、版本号完全一致,差一个小版本都进不了服, 下面按这两种情况拆开讲,顺便把权限、配置、排错一并给到位,先分清 BTR 的两种形态,别急着传文件很多人卡……

    程序编程 2026年10月21日
    200

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注