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

相关推荐
楚山之石26 分钟前
【Lancet Neurology 】多发性硬化认知障碍的 SDMT 筛查、灰质萎缩标志与认知康复循证路径
图像处理·人工智能·学习·mri
海海不掉头发2 小时前
CSDN博客_时序预测9模型复现对比
人工智能·学习·软件工程
蓝祁子yoky4 小时前
Qt学习日记 Day13:网络编程(一)-TCP基础与Socket实战
网络·qt·学习
箓维4 小时前
TCP Socket的进阶实现
网络·笔记·tcp/ip
二哈赛车手4 小时前
新人笔记---hermes定时功能设计,具体讲解以及可优化点
java·人工智能·笔记·spring·ai·typescript
架构师伯子明5 小时前
Ros 学习十三:IK Demo
学习
小羊没烦恼!5 小时前
关于分布式锁原理的一些学习与思考-redis分布式锁,zookeeper分布式锁
java·服务器·网络·学习·负载均衡
幼儿园蛋小黄5 小时前
从 STM32N647 的 AI 部署入门嵌入式:一条可落地的学习路线
人工智能·stm32·学习
星恒随风5 小时前
Linux网络编程:应用层协议究竟是什么?从网络计算器到TCP Socket抽象基类完整实现
linux·网络·笔记·tcp/ip
Y.9997 小时前
电脑黑屏只有鼠标能动
学习