环境搭建 nginx 配置

本文详细介绍了如何在Linux环境中安装Nginx 1.18.0和PHP,并配置Nginx与PHP的通讯,包括unix domain socket和tcp模式。此外,还讲解了配置TP5的PathInfo模式和伪静态,以及设置Nginx多站点和解决Laravel8访问报错的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.安装nginx
wget http://nginx.org/download/nginx-1.18.0.tar.gz
rpm -ivh https://nginx.org/packages/centos/8/x86_64/RPMS/nginx-1.18.0-1.el8.ngx.x86_64.rpm
nginx -v

2.安装php
安装包编译安装太麻烦,直接yum install php php-json php-mysqlnd php-common php-gd php-xml php-mbstring php-ldap php-pear php-xmlrpc
php -v
7.2.24

3.改文件配置和文件目录
whereis nginx.conf
vim /etc/nginx/nginx.conf里面引入了/etc/nginx/conf.d/
/etc/nginx/conf.d/default这个是nginx默认server配置 低版本的如1.14没有此文件,建议安装高一点版本
将location /php那段解开注释
nginx与php的两种通讯模式
1.unix domain socket模式
2.tcp模式
修改或增加
location ~ .php$ {
root /var/www/html;
#fastcgi_pass unix:/run/php-fpm/www.sock;要与listen = /run/php-fpm/www.sock保持一致
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /var/www/html/$fastcgi_script_name;注意此处/var/www/html是你的项目地址,否则会报错no this file
include fastcgi_params;
}

修改/etc/php-fpm.d/www.conf
;listen = /run/php-fpm/www.sock
listen 127.0.0.1:9000;  增加此行,与fastcgi_pass 127.0.0.1:9000;保持一致

4.配置tp5pathinfo模式和伪静态
find / -name nginx.conf
vim nginx.conf
查看include引入的配置文件default.conf,按下面格式修改,我参考了本地的phpstudy配置
server {
listen 80;
server_name tp.ysy.com;
root /var/www/html/tp5/public;
location / {
index index.php index.html error/index.html;
error_page 400 /error/400.html;//没有就删掉
error_page 404 /error/404.html;
error_page 500 /error/500.html;
if (!-e KaTeX parse error: Expected '}', got 'EOF' at end of input: … rewrite ^(.*) /index.php?s=/KaTeX parse error: Expected 'EOF', got '}' at position 30: …k; }̲ au… {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_split_path_info ^((?U).+.php)(/?.+)$;//不会正则,一脸懵逼啊
fastcgi_param SCRIPT_FILENAME d o c u m e n t r o o t document_root documentrootfastcgi_script_name;
fastcgi_param PATH_INFO $fastcgi_path_info;
fastcgi_param PATH_TRANSLATED d o c u m e n t r o o t document_root documentrootfastcgi_path_info;
include fastcgi_params;
}
}

5.nginx多站点配置
开启阿里云端口89
打开防火墙端口89
firewall-cmd --zone=public --add-port=89/tcp(永久生效再加上 --permanent)
拷贝一个配置文件cp default.conf wwwsec.conf
修改wwwsec.conf
listen 89
root /var/www/html/laravel8/public 你的项目地址

6.laravel8访问报错
查看所有者/所属组
ps aux|grep nginx|grep -v grep//nginx
ps aux | egrep ‘(apache|httpd)’//apache
sudo chown -R $USER:www storage //我的用户组是nginx
sudo chown -R $USER:www bootstrap/cache
chown -R $USER(用户):web用户组 storage
chmod -R 775 storage
chmod -R 775 bootstrap/cache

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值