ubuntu-学习笔记-nginx+php

nginx+php

记录一下在ubuntu中nginx+php部署tp项目

nginx

nginx就是正常下载

下载nginx

sudo apt-get install nginx

tp项目版本是3.2,通过设置路由,以域名/api.php/控制器/xxx的格式进行api的调用,文件后缀为.class.php

需要在conf中进行一些处理,如下

配置nginx.conf

nginx 复制代码
server {
		listen 80 ;
		listen 443 ssl;# 有ssl证书的话
		server_name www.xxx.com;  # 你的域名
		# SSL证书配置
		ssl_certificate  /home/ssl/nginx/xxx.pem;#你的pem文件,在各大平台的ssl上下载
		ssl_certificate_key /home/ssl/nginx/xxx.key;#你的key文件,在各大平台的ssl上下载
		
		root /var/www/xxx;#你的项目根目录
		index index.php index.html index.htm;
		location / {
			try_files $uri $uri/ /api.php/$uri;
		}
		location ~ ^/api\.php(.*)$ {
			fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;  # 根据你的PHP版本调整
			fastcgi_index api.php;
			fastcgi_split_path_info ^(.+\.php)(.*)$;
			fastcgi_param PATH_INFO $fastcgi_path_info;
			fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
			include fastcgi_params;
		}
		location ~ /\.ht {
			deny all;
		}
	}

php

使用的是php7.4

//安装php本体
sudo apt-get install php7.4 安装项目所需要用到的扩展,比如我需要的是mysql相关的扩展
sudo apt-get install php7.4-mysqli php7.4-pdo-mysql

安装后可以通过php -m|grep mysql指令查看相关的扩展是否已启用

如果没有的话可以通过下面的指令启用
sudo a2enmod mysqld以及在php.ini中注释掉相关扩展前的;

通过以上配置之后,然后执行systemctl restart nginx重启nginx即可

其他

切换php版本
sudo update-alternatives --config php

相关推荐
猿与禅4 小时前
Linux(Ubuntu)入门到实战:系统管理、常用命令与权限体系完整指南
linux·ubuntu·apt·进程管理·系统运维·用户权限·vi/vim
潜心一志5 小时前
HALCON软件——基本架构,算子参数
学习·计算机视觉
开心就多写,一点就开心5 小时前
导演视听语言与分镜系统笔记(一):景别系统、机位视点与时空连贯性设计
笔记·aigc·镜头·电影
爱吃苹果的日记本6 小时前
数据结构第三课(时间复杂度)
数据结构·学习
疯狂打码的少年7 小时前
【计算机网络】IPv6基础(特点、表示法、与IPv4对比)
网络·笔记·计算机网络
泡泡鱼(敲代码中)9 小时前
MySQL基础学习笔记:从数据模型到DDL全掌握
开发语言·数据库·笔记·学习·mysql
江湖人称菠萝包10 小时前
【Windows】《深入浅出Windows API程序设计:核心编程篇》笔记-Chapter4-进程
windows·笔记
fanged10 小时前
Agent的Skills(TODO)
学习
是隼人10 小时前
buuctf-pwn picoctf_2018_shellcode(ret2shellcode)题解(学习过程持续更新)
c语言·学习·安全·pwn入门·ctf入门
m4Rk_11 小时前
【论文阅读】Agent 记忆机制(69):STITCH——用上下文意图解决“语义相关但情境错误”的记忆检索
论文阅读·人工智能·学习·开源·github