当前位置:网站首页 >  百科

Linux服务器项目正式环境上线从零开始可落地完整指南

时间:2026年06月03日 14:55:51 来源:易频IT社区

一、前置准备

你仅需要提前准备好以下内容,所有工具都可通过命令直接安装,不需要手动下载:

  • 一台开通公网IP的CentOS 7.x服务器,已经通过root账号登录SSH终端
  • 本地打包完成的项目jar包(以最常用的Java SpringBoot项目为例,其他语言可适配修改)
  • 已经在域名服务商将你的域名解析到服务器公网IP(无域名可直接用IP访问)

二、服务器系统基础配置

2.1 一键安装基础依赖

直接复制执行以下命令,会自动更新系统、安装编辑器、网络工具、防火墙、Java运行环境,所有包来自官方源,安全可靠:

``` yum update -y && yum install -y vim wget curl net-tools firewalld java-1.8.0-openjdk-devel ```

2.2 配置防火墙开放端口

正式环境必须开启防火墙,避免端口暴露风险,直接执行以下命令开放默认HTTP/HTTPS端口,自定义端口替换对应数值即可:

``` systemctl start firewalld && systemctl enable firewalld firewall-cmd --add-port=80/tcp --permanent firewall-cmd --add-port=443/tcp --permanent firewall-cmd --reload ```

验证配置:执行firewall-cmd --list-ports,输出包含你添加的端口即为配置成功。

2.3 创建项目专用运行用户

禁止用root账号运行项目,避免权限溢出风险,直接执行命令创建专用运行用户:

``` useradd -m app && echo "app" | passwd --stdin app ```

以上命令创建了名为app的用户,默认密码为app,上线后可自行修改。

三、项目部署配置

3.1 创建项目目录

执行以下命令创建项目存储目录并授权,把命令中的your-project替换成你自己的项目名即可:

``` mkdir -p /data/app/your-project && chown -R app:app /data/app ```

3.2 上传项目包

本地打包完成后,在你本地电脑的终端(Windows用PowerShell、Mac用自带终端)执行以下命令上传jar包,替换对应参数:

``` scp ./your-project.jar root@你的服务器公网IP:/data/app/your-project/ ```

上传完成后回到服务器终端,修改文件权限:

``` chown app:app /data/app/your-project/your-project.jar ```

3.3 配置Nginx反向代理

先执行命令安装Nginx:

``` rpm -ivh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm yum install -y nginx && systemctl start nginx && systemctl enable nginx ```

然后新建项目配置文件,执行命令打开编辑器:

``` vim /etc/nginx/conf.d/your-project.conf ```

Linux服务器项目正式环境上线从零开始可落地完整指南

i进入编辑模式,粘贴以下完整配置,替换对应内容即可:

``` server { listen 80; server_name 你的域名; 无域名填写服务器公网IP location / { proxy_pass http://127.0.0.1:8080; 替换成你的项目实际端口 proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } } ```

esc退出编辑,输入:wq回车保存退出,验证配置并重载Nginx:

``` nginx -t && systemctl reload nginx ```

输出显示test is successful即为配置正确。

3.4 配置项目开机自启

用Systemd托管项目,可实现开机自启、崩溃自动重启,新建服务文件:

``` vim /etc/systemd/system/your-project.service ```

粘贴以下完整配置,替换对应内容:

``` [Unit] Description=Your Project Service After=network.target [Service] User=app Group=app WorkingDirectory=/data/app/your-project ExecStart=/usr/bin/java -jar /data/app/your-project/your-project.jar --spring.profiles.active=prod Restart=always RestartSec=3 [Install] WantedBy=multi-user.target ```

保存退出后,执行命令启动项目并开启自启:

``` systemctl daemon-reload && systemctl start your-project && systemctl enable your-project ```

四、上线验证与常见问题排查

4.1 服务状态验证

执行命令查看项目运行状态:

``` systemctl status your-project ```

输出显示active (running)即为启动成功。

4.2 访问验证

打开浏览器输入你的域名或服务器公网IP,能正常打开项目页面即为上线成功。

4.3 常见卡壳问题排查

  • 无法访问:先检查云服务商控制台的安全组是否放开80/443端口,再执行firewall-cmd --list-ports确认防火墙已开放对应端口
  • 项目启动失败:执行journalctl -u your-project -f查看实时日志,常见原因为端口被占用、jar包损坏、配置参数错误
  • Nginx 502错误:说明项目未正常启动,或proxy_pass的端口和项目实际启动端口不一致

五、正式环境收尾加固

以下步骤必须完成,避免上线后出现安全问题:

  • 修改app用户默认密码,执行passwd app,输入新密码即可
  • 禁用root远程SSH登录,打开配置文件vim /etc/ssh/sshd_config,把PermitRootLogin yes改成PermitRootLogin no,保存后执行systemctl restart sshd
  • 一键申请免费HTTPS证书,执行以下命令自动配置: ``` yum install -y certbot python2-certbot-nginx certbot --nginx -d 你的域名 ``` 按照提示操作即可完成配置,证书会自动续期,不需要手动维护

到这里整个正式环境上线流程就全部完成,所有步骤均可直接复制执行,零修改成本落地。

相关推荐

最新

热门

推荐

精选

标签

易频IT社区是综合性互联网IT技术门户网站,专注分享网络技术、服务器运维、网络安全、编程开发、系统架构、云计算、大数据等行业干货,实时更新IT行业资讯、零基础教程、实战案例,为IT从业者、技术爱好者提供专业的学习交流平台。

Copyright © 2021-2026 易频IT社区. All Rights Reserved. 备案号:闽ICP备2023013482号 网站地图