当前位置: 首页 > news >正文

nginx 实战配置

一、配置一个默认80端口的,静态页面,路径是path1。  http://192.168.0.111/path1 ,  /path1路径指向linux的/data/index1.html

   vi    /data/nginx-1.24.0/conf/nginx.conf 文件添加以下配置

     location /path1 {
                 alias /data/;                     # 使用 alias 直接映射路径
                 index index1.html;          # 指定默认访问文件
                 try_files $uri $uri/ /index.html;  # 确保路径存在时返回正确文件
         }

   

成功

二、配置php的一个测试页面保证可以用,端口是88,http://192.168.0.111:88/

这里用的是88端口,指向默认的页面

vi  /data/nginx-1.24.0/conf/nginx.conf

 配置如下:

  server {
    listen       88 default_server;
    listen       [::]:88 default_server;
    # 这里改动了,也可以写你的域名
    server_name  localhost;
    # 默认网站根目录(www目录)
    root          /www/html;
    index php1.php index.html index.htm;
    # Load configuration files for the default server block.
    include /data/nginx-1.24.0/conf*.conf;
    location / {
        # 这里改动了 定义首页索引文件的名称
        index php1.php index.html index.htm;
    }
    error_page 404 /404.html;
        location = /40x.html {
    }
    error_page 500 502 503 504 /50x.html;
        location = /50x.html {
    }
    # 这里新加的
    # PHP 脚本请求全部转发到 FastCGI处理. 使用FastCGI协议默认配置.
    # Fastcgi服务器和程序(PHP,Python)沟通的协议.
    location ~ \.php$ {
        root          /www/html;
        # 设置监听端口
        fastcgi_pass   unix:/data/php-8.0.24/php-cgi.sock;
        # 设置nginx的默认首页文件(上面已经设置过了,可以删除)
        fastcgi_index  php1.php;
        # 设置脚本文件请求的路径
        fastcgi_param SCRIPT_FILENAME /www/html$fastcgi_script_name;
        # 引入fastcgi的配置文件
        include        fastcgi_params;
    }
    
 }

 保存  /data/nginx-1.24.0/conf/nginx.conf

makdir  /html

cd /html

mkdir  html

vi   php1.php

保存 

通过nginx 检查nginx的配置文件是否有语法错误,下面就是没有语法错误

重新启动nginx 

  防火墙开启88端口
  sudo firewall-cmd --zone=public --add-port=88/tcp --permanent
  sudo firewall-cmd --reload

访问页面测试

出现这个页面就是访问成功

期间可能会出现的错误,可以查看nginx的错误文件。

如果出现这个错误

[crit] 64685#0: *10 connect() to unix:/data/php-8.0.24/php-cgi.sock failed (13: Permission denied) while connecting t o upstream, client: 192.168.0.103, server: localhost, request: "GET /php1/ HTTP/1.1", upstream: "fastcgi://unix:/data/php-8.0.24/php-cgi. sock:", host: "192.168.0.111"

1. 检查套接字文件权限与所有权

ls -l /data/php-8.0.24/php-cgi.sock

# 修改套接字文件权限(允许Nginx用户或组访问)
sudo chmod 660 /data/php-8.0.24/php-cgi.sock

# 修改套接字文件所属组(确保与Nginx进程组一致)
sudo chown leo:leo /data/php-8.0.24/php-cgi.sock

# 修改目录权限(确保Nginx有权访问目录)
sudo chmod 755 /data/php-8.0.24/

2、确认PHP-FPM与Nginx用户/组一致性

我这个是一制的,都是一样的用户启动php-fpm,nginx

查看PHP-FPM配置

修改配置。

# 重启PHP-FPM(确保套接字文件重新生成)
sudo systemctl restart php-fpm

# 重启Nginx
sudo systemctl restart nginx

使nginx支持https
 

查看是否安装了ssl,如果没有--with-http_ssl_module,说明未安装ssl

解决办法,重新编译

原来的修改一下名字,备份

cd /data

sudo systemctl stop nginx

sudo systemctl  status nginx

mv nginx-1.24.0/  nginx

解压

cd   sudo  

cp  /software/nginx-1.24.0.tar  /data/nginx-1.24.0.tar 

sudo tar  -xvf nginx-1.24.0.tar

 sudo mv  nginx-1.24.0     nginx1


cd nginx1

./configure --prefix=/data/nginx-1.24.0 --with-http_ssl_module --with-http_gzip_static_module --with-http_stub_status_module --with-pcre

sudo make 

sudo make install

完成后查看当前版本有没有htts功能  

 cd /software/nginx-1.24.0/sbin/
sudo ./nginx -V

nginx -V(注意是大写的V)

把原来的配置拷贝过来

cd  /data/nginx-1.24.0/conf/

mv  nginx.conf  nginx.conf.bak

cp  /data/nginx1/conf/nginx.conf   /data/nginx-1.24.0/conf/nginx.conf

sudo   systemctl   start   nginx

sudo systemctl status   nginx

原来的配置也是生效的

http://www.lryc.cn/news/538121.html

相关文章:

  • WebMvcConfigurer 介绍
  • java05(类、泛型、JVM、线程)---java八股
  • Python+appium实现自动化测试
  • Unity中如何判断URL是否为RTSP或RTMP流
  • 基于角色访问控制的UML 表示02
  • 【函数题】6-10 二分查找
  • 关于conda换镜像源,pip换源
  • DeepSeek与ChatGPT的全面对比
  • Spring AI发布!让Java紧跟AI赛道!
  • 基于CT107D单片机综合训练平台的秒表设计
  • opensuse [Linux] 系统挂在新的机械硬盘
  • 时间序列分析(四)——差分运算、延迟算子、AR(p)模型
  • 【CUDA】Triton
  • Windows环境搭建ES集群
  • langchain学习笔记之消息存储在内存中的实现方法
  • 怎么在智能合约中植入deepseek
  • 驱动开发系列37 - Linux Graphics 2D 绘制流程(二)- 画布创建和窗口关联
  • B. Longest Divisors Interval
  • 前端与后端的对接事宜、注意事项
  • 【第13章:自监督学习与少样本学习—13.2 少样本学习(FSL)与元学习(Meta-Learning)的基础理论与应用案例】
  • 函数防抖和节流
  • linux--关于linux文件IO(2) open、read、lseek、stat
  • 利用xtquant高效获取财务数据:量化分析的重要补充
  • Unity UI个人总结
  • Javascript的数据类型
  • Day3 25/2/16 SUN
  • 欧洲分组加密算法之Kasumi
  • vue使用v-chart的实践心得
  • Endnote使用笔记——持续更新
  • Tetragon:一款基于eBPF的运行时环境安全监控工具