Linux 配置 Nginx 服务的详细步骤,绝对干货

简介: Linux 配置 Nginx 服务的详细步骤,绝对干货

1. 更新系统

Bash

1sudo apt-get update && sudo apt-get upgrade # 对于基于Debian/Ubuntu的系统
2sudo yum update # 对于基于RHEL/CentOS的系统
3
4# 如果你使用的是较新的系统,可能需要使用dnf代替yum
5sudo dnf check-update && sudo dnf upgrade # 对于基于Fedora/CentOS Stream的系统

2. 安装Nginx

使用包管理器安装(推荐)

对于大多数Linux发行版,你可以通过包管理器轻松安装Nginx:

对于Debian / Ubuntu:

Bash

1sudo apt-get install nginx

对于RHEL / CentOS / Fedora / CentOS Stream:

Bash

1sudo yum install epel-release # 添加EPEL仓库(如果是RHEL/CentOS 7及以前版本)
2sudo dnf install nginx # 对于Fedora/CentOS Stream,或已经安装了EPEL的RHEL/CentOS 8+

或者从源码编译安装(如果你需要特定版本或额外模块)

Bash

1# 安装编译所需的依赖
2sudo yum install -y gcc gcc-c++ automake pcre pcre-devel zlib zlib-devel openssl-devel
3
4# 下载对应版本的Nginx源码
5wget http://nginx.org/download/nginx-1.23.0.tar.gz # 替换成你需要的版本号
6tar -zxvf nginx-1.23.0.tar.gz
7cd nginx-1.23.0
8
9# 配置、编译和安装
10./configure --prefix=/usr/local/nginx --with-http_ssl_module # 添加所需模块
11make
12sudo make install

3. 配置Nginx

Nginx的主配置文件位于 /etc/nginx/nginx.conf。打开它进行基础配置修改,例如设置工作进程数、监听端口等:

Bash

1sudo nano /etc/nginx/nginx.conf
1.
例如,配置worker_processes和events模块:
Nginx
1worker_processes auto; # 根据CPU核心数自动设置工作进程数
2events {
3    worker_connections 1024; # 每个工作进程的最大并发连接数
4}
5
6http {
7    ...
8}

4. 配置Nginx虚拟主机

在/etc/nginx/conf.d/目录下创建一个新的配置文件,例如default.conf:

Bash

1sudo nano /etc/nginx/conf.d/default.conf

在新文件中编写虚拟主机配置,例如:

Nginx
1server {
2    listen 80; # 监听80端口
3    server_name yourdomain.com; # 替换为你的域名或IP地址
4
5    root /var/www/html; # 设置网站根目录
6    index index.html index.htm;
7
8    location / {
9        try_files $uri $uri/ =404;
10    }
11}

5. 开放端口号

确保系统的防火墙规则允许外部访问80端口(HTTP)或443端口(HTTPS)。对于iptables,你可以这样做:

Bash
1sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT
2sudo service iptables save # 保存iptables规则(对于旧版系统)
3# 或者使用firewalld(对于较新系统)
4sudo firewall-cmd --permanent --add-service=http
5sudo firewall-cmd --reload

6. 启动Nginx服务并检查状态

启动Nginx服务:

Bash
1sudo systemctl start nginx # Debian/Ubuntu/Fedora/CentOS
2sudo service nginx start # 旧版CentOS/RHEL
3
4# 设置开机启动
5sudo systemctl enable nginx # 新版系统
6sudo chkconfig nginx on # 旧版系统
7
8# 检查Nginx服务状态
9sudo systemctl status nginx # 新版系统
10sudo service nginx status # 旧版系统

现在你应该可以在浏览器中通过服务器的IP地址或配置的域名访问到Nginx默认欢迎页。对于更复杂的配置,如SSL/TLS设置、反向代理、负载均衡等功能,请根据实际需求进一步配置相应的Nginx配置文件。


目录
相关文章
|
4月前
|
安全 Linux 开发工具
【Linux】vim使用与配置教程
Vim是一款功能强大的文本编辑器,广泛应用于Linux环境,是开发者和系统管理员的必备工具。本文介绍了Vim的基本操作与简单配置,涵盖命令模式、插入模式和底行模式的使用方法,以及光标定位、复制粘贴、搜索替换等常用技巧。同时,文章还提供了实用的分屏操作和代码注释方法,并分享了通过`.vimrc`文件进行个性化配置(如显示行号、语法高亮、自动缩进等)的技巧,帮助用户提升文本编辑效率。掌握这些内容,能让Vim更好地服务于日常工作与开发需求。
311 3
|
1月前
|
Linux
Linux下版本控制器(SVN) -服务器端环境搭建步骤
Linux下版本控制器(SVN) -服务器端环境搭建步骤
90 0
Linux下版本控制器(SVN) -服务器端环境搭建步骤
|
2月前
|
关系型数据库 MySQL Java
安装和配置JDK、Tomcat、MySQL环境,以及如何在Linux下更改后端端口。
遵循这些步骤,你可以顺利完成JDK、Tomcat、MySQL环境的安装和配置,并在Linux下更改后端端口。祝你顺利!
177 11
|
2月前
|
Java 关系型数据库 MySQL
在Linux操作系统上设置JDK、Tomcat、MySQL以及J2EE后端接口的部署步骤
让我们总结一下,给你的Linux操作系统装备上最强的军队,需要先后装备好JDK的弓箭,布置好Tomcat的阵地,再把MySQL的物资原料准备好,最后部署好J2EE攻城车,那就准备好进军吧,你的Linux军团,无人可挡!
88 18
|
3月前
|
Linux Shell
在Linux、CentOS7中设置shell脚本开机自启动服务
以上就是在CentOS 7中设置shell脚本开机自启动服务的全部步骤。希望这个指南能帮助你更好地管理你的Linux系统。
194 25
|
1月前
|
Linux 网络安全 开发工具
在Linux下配置gitee与Github的远程仓库
注意,git push后,是输入你的账号与密码。这个步骤可以通过特殊设置省去,但是一开始还是不要太省。
75 0
|
3月前
|
安全 Linux 网络安全
在Linux(CentOS和AWS)上安装更新的git2的方法并配置github-ssh
经过以上这些步骤,你现在就能在GitHub上顺利往返,如同海洋中的航海者自由驰骋。欢迎你加入码农的世界,享受这编程的乐趣吧!
129 10
|
4月前
|
Java Linux 应用服务中间件
在Rocky Linux 9上安装JDK并配置环境变量!
本教程介绍在Rocky Linux 9上安装JDK并配置环境变量的完整步骤。首先更新系统,清理旧版本JDK相关包及残留文件,确保环境干净。接着搜索并安装所需版本的JDK(如OpenJDK 17),验证安装是否成功。然后查找JDK安装路径,配置全局环境变量`JAVA_HOME`和`PATH`,最后验证环境变量设置。按照此流程操作,可顺利完成Java开发环境搭建,支持多版本切换(如JDK 8/11/17)。生产环境请谨慎操作,避免影响现有服务。
594 21
|
3月前
|
人工智能 Kubernetes Ubuntu
linux配置IP
linux配置IP
254 1
|
4月前
|
监控 Shell Linux
Android调试终极指南:ADB安装+多设备连接+ANR日志抓取全流程解析,覆盖环境变量配置/多设备调试/ANR日志分析全流程,附Win/Mac/Linux三平台解决方案
ADB(Android Debug Bridge)是安卓开发中的重要工具,用于连接电脑与安卓设备,实现文件传输、应用管理、日志抓取等功能。本文介绍了 ADB 的基本概念、安装配置及常用命令。包括:1) 基本命令如 `adb version` 和 `adb devices`;2) 权限操作如 `adb root` 和 `adb shell`;3) APK 操作如安装、卸载应用;4) 文件传输如 `adb push` 和 `adb pull`;5) 日志记录如 `adb logcat`;6) 系统信息获取如屏幕截图和录屏。通过这些功能,用户可高效调试和管理安卓设备。