搭建web 环境的那些事

文章目录:

[一、Web 服务运行环境](#一、Web 服务运行环境)

[1. Nginx / Apache 环境](#1. Nginx / Apache 环境)

[1.1 端口规划](#1.1 端口规划)

[1.2 日志目录规范](#1.2 日志目录规范)

[1.3 反向代理配置(核心)](#1.3 反向代理配置(核心))

[2 应用运行环境](#2 应用运行环境)

[2.1 Java 运行环境(OpenJDK / Maven)](#2.1 Java 运行环境(OpenJDK / Maven))

[2.2 Python 运行环境(venv / conda)](#2.2 Python 运行环境(venv / conda))

[2.3 Node.js 运行环境(nvm)](#2.3 Node.js 运行环境(nvm))

[3 适用场景总结](#3 适用场景总结)

小结



一、Web 服务运行环境

Web 服务是 Linux 服务器中最常见的应用场景,通常用于承载:

  • 企业官网

  • 管理后台

  • API 接口服务

一个规范的 Web 运行环境,不仅要"能访问",还需要在 端口规划、日志管理、反向代理 等方面具备可维护性。


1. Nginx / Apache 环境

在实际项目中,Nginx 使用更为广泛,Apache 多见于传统 PHP 项目或历史系统,下文以通用规范为主。


1.1 端口规划

合理的端口规划是服务器规范化的第一步,推荐如下:

服务类型 端口 说明
HTTP 80 Web 访问
HTTPS 443 加密访问
后端应用 8000--9000 内部服务端口
管理后台 8080 / 8443 仅内网访问

规划原则:

  • 对外只暴露 80 / 443

  • 后端应用端口不直接暴露公网

  • 管理端口限制来源 IP

通过反向代理统一入口,提升安全性和可维护性。


1.2 日志目录规范

日志混乱是很多 Web 服务器的通病,建议统一规范:

复制代码
/var/log/nginx
├── access.log
├── error.log
├── site-a.access.log
└── site-a.error.log

推荐做法:

  • 每个站点独立 access / error 日志

  • 日志与代码目录分离

  • 配合 logrotate 进行日志轮转

示例(Nginx):

复制代码
access_log /var/log/nginx/site-a.access.log;
error_log  /var/log/nginx/site-a.error.log;

1.3 反向代理配置(核心)

Nginx 常用于作为 统一入口 + 反向代理层,后端服务只监听本地端口。

示例配置:

复制代码
server {
    listen 80;
    server_name api.example.com;

    location / {
        proxy_pass http://127.0.0.1:8080;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
    }
}

这种架构的优势:

  • 隐藏后端真实端口

  • 统一 SSL / 域名管理

  • 便于后续扩展负载均衡


2 应用运行环境

Web 服务器通常只负责转发请求,真正的业务逻辑运行在应用环境中。不同项目对运行环境的要求不同。


2.1 Java 运行环境(OpenJDK / Maven)

常见场景:

  • Spring Boot

  • 企业管理系统

  • API 服务

推荐配置:

  • OpenJDK 8 / 11 / 17(按项目需求)

  • Maven 用于构建

基本验证:

复制代码
java -version
mvn -version

运行方式:

  • 后端服务监听本地端口(如 8080)

  • 通过 Nginx 反向代理对外提供访问


2.2 Python 运行环境(venv / conda)

常见场景:

  • Flask / Django

  • 自动化平台

  • 内部工具系统

推荐实践:

  • 使用 venvconda 隔离环境

  • 每个项目独立依赖

示例:

复制代码
python3 -m venv venv
source venv/bin/activate
pip install -r requirements.txt

优点:

  • 避免依赖冲突

  • 便于迁移和复现


2.3 Node.js 运行环境(nvm)

常见场景:

  • 前端构建

  • Node.js API

  • 管理后台

推荐使用 nvm 管理版本:

复制代码
nvm install 18
nvm use 18

优势:

  • 多版本共存

  • 项目之间互不影响


3 适用场景总结

场景 推荐架构
企业官网 Nginx + 静态资源
管理后台 Nginx + Java / Node
API 服务 Nginx + Java / Python

统一原则:

  • Web 层只负责转发

  • 应用层只监听内网

  • 日志、端口、目录统一规划


小结

Web 服务运行环境的搭建,不只是安装 Nginx 或启动应用,更重要的是:

  • 端口是否规范

  • 日志是否可维护

  • 架构是否易扩展

通过 Nginx + 应用运行环境 的方式,可以满足绝大多数企业 Web 场景需求。

相关推荐
鹏北海6 分钟前
micro-app 微前端项目部署指南
前端·nginx·微服务
发现一只大呆瓜9 分钟前
虚拟列表:从定高到动态高度的 Vue 3 & React 满分实现
前端·vue.js·react.js
css趣多多13 分钟前
add组件增删改的表单处理
java·服务器·前端
证榜样呀18 分钟前
2026 大专计算机专业必考证书推荐什么
大数据·前端
蓝帆傲亦25 分钟前
前端性能极速优化完全指南:从加载秒开体验到丝滑交互
前端·交互
鱼毓屿御37 分钟前
如何给用户添加权限
前端·javascript·vue.js
JustHappy41 分钟前
「web extensions🛠️」有关浏览器扩展,开发前你需要知道一些......
前端·javascript·开源
何中应1 小时前
nvm安装使用
前端·node.js·开发工具
雯0609~1 小时前
hiprint:实现项目部署与打印3-vue版本-独立出模板设计与模板打印页面
前端·vue.js·arcgis
杜子不疼.1 小时前
【Linux】教你在 Linux 上搭建 Web 服务器,步骤清晰无门槛
linux·服务器·前端