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

原来的配置也是生效的

相关推荐
为思念酝酿的痛8 小时前
POSIX信号量
linux·运维·服务器·后端
专业白嫖怪8 小时前
什么是docker
运维·docker·容器
隔窗听雨眠9 小时前
Nginx网关响应慢排查手记
java·服务器·nginx
人还是要有梦想的9 小时前
linux下用搜狗输入法,中英文切换
linux·运维·服务器
北京智和信通9 小时前
某部队IT基础设施及机房动环统一运维建设实例
运维·网管平台·网管软件·网络管理系统·网络运维平台·网络运维系统
乐维_lwops9 小时前
从 “救火运维” 到 “自动驾驶”:运维智能体到底解决了什么?
运维·人工智能·运维智能体
bush410 小时前
嵌入式linux学习记录二
linux·运维·学习
weixin_4684668510 小时前
MoneyPrinterTurbo 短视频自动化生产实战指南
运维·人工智能·自动化·大模型·音视频·moneyprinter
難釋懷10 小时前
Nginx自签名-图形化工具 XCA
运维·nginx
志栋智能12 小时前
小步快跑:从单一场景开启超自动化巡检之旅
运维·网络·人工智能·自动化