更改nginx配置文件后需要重新加载Nginx!!!

本文介绍了如何在Nginx配置变更后使其生效,包括重启和轻量级的重新加载方法,以及在云服务器未配置环境变量时的特殊处理。还探讨了为何需要更改配置以访问特定目录的文件,以及关于静态文件服务的基本配置选项。
摘要由CSDN通过智能技术生成

在大多数情况下,修改了 Nginx 的配置文件后,需要重新加载或重启 Nginx 服务器才能使更改生效。这是因为 Nginx 通常在启动时会读取配置文件,并在运行期间保持这些配置。因此,当您修改了配置文件后,需要告知 Nginx 重新加载配置以使更改生效。

使 Nginx 加载新的配置(2种):

(来自GPT)

  1. 重启 Nginx 服务器:这是最简单和最直接的方法。您可以通过执行以下命令来重启 Nginx 服务器:
    sudo service nginx restart
    
    或者
    
    sudo systemctl restart nginx 
  2. 重新加载配置:这种方法比重启更轻量级,它会使 Nginx 重新加载配置文件而无需停止整个服务器。您可以执行以下命令来重新加载 Nginx 的配置:
    sudo service nginx reload
    
    或者
    
    sudo systemctl reload nginx 

在执行这些命令之后,Nginx 将会重新加载配置文件,并应用您所做的更改,而不会中断正在进行的连接。这在生产环境中尤为有用,因为它允许您在不中断现有连接的情况下进行配置更改。

但是!!!

我用上述两个方法并没有用,说找不到nginx...但是真的有的

后来~ 我终于在眼泪中明白~

以上两种方法是基于已经对nginx进行了环境变量的配置!!而我们公司这个云上服务器,研发偷懒并没有进行配置哈哈哈哈哈哈...

如果没有配置,则需要进到sbin目录下,进行重新加载,如下所示,我问他要的截图:

(❓sbin目录是本来就存在的还是他自己建的?反正进入到nginx所在的目录去进行启动就哦了)

注意:重新加载之前用“./nginx -t”命令检查nginx.conf文件是否有语法错误,successful之后再执行"./nginx -s reload"命令

为什么要更改nginx配置文件❓

因为想访问/opt/projects/zyfamwx/upload/avatar文件夹内的图片default-avatar.jpg,里面存的是用户头像,前端需要展示。其中zyfamwx是项目名,头像上传之后返回的是相对地址:

"/upload/avatar/default-avatar.jpg"

在nginx.conf里进行如下配置后:

 server {
        listen       80;
        server_name  www.severname.com;
		
		location /hw/ {
			alias /opt/projects/zyfamwx/;
			
			index  index.html index.htm;
		}
/**
*这个配置告诉 Nginx,当收到以 /hw/ 开头的 URL 请求时,
将在 /opt/projects/zyfamwx/ 目录下查找对应的文件,并返回给客户端。
因此,如果您访问 http://www.severname.cn/hw/,
Nginx 将会返回 /opt/projects/zyfamwx/ 目录下的 index.html 或 index.htm 文件。
*/

前端仅需在URL中输入http://ip地址/hw/upload/avatar/default-avatar.jpg即可查看图片default-avatar.jpg

一定要配置nginx吗

(❓不用location映射,直接写绝对位置可以吗❓)

在默认情况下,Nginx 不需要额外的配置就可以提供基本的静态文件服务,例如图片、HTML 文件等。但是,有时候你可能需要配置 Nginx 来更好地满足你的需求。

例如:要访问位于 Linux 服务器上 /opt/projects/zyfamwx/uploads/avatarm 目录下的图片,你需要确保该目录下的图片文件可被 Web 服务器(比如 Nginx)访问到。下面是一个简单的方法:

  1. 将图片放置在 Web 服务器可以访问的目录下:你可以将图片文件复制到 Nginx 默认的静态文件目录中,或者通过 Nginx 的配置指定一个新的目录作为静态文件根目录。

    Nginx 默认的静态文件目录通常取决于你的操作系统以及 Nginx 的安装方式。以下是一些常见的默认静态文件目录:
    1. Ubuntu/Debian 系统:在 Ubuntu 或 Debian 系统上,通常默认的静态文件目录是 /var/www/html

    2. CentOS/RHEL 系统:在 CentOS 或 RHEL 系统上,通常默认的静态文件目录是 /usr/share/nginx/html/var/www/html

    3. 其他 Linux 系统:其他 Linux 发行版可能会有不同的默认静态文件目录,但通常也会在 /var/www/html/usr/share/nginx/html 中。

  2. 配置 Nginx 来提供静态文件服务:你需要在 Nginx 的配置文件中添加一个新的 location 指令,指定访问该图片目录的路径。(即上述所说)

  3. 重启 Nginx 服务:在修改了 Nginx 配置文件后,需要重启 Nginx 服务以使修改生效。(上述所说)

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值