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

相关推荐
xuhaoyu_cpp_java4 小时前
项目学习(三)分页查询
java·经验分享·笔记·学习
小宋加油啊6 小时前
机械臂抓取物体 PVN3D算法调研学习
学习·算法·3d
Xzh04237 小时前
AI Agent 学习路线(Java 后端方向)
java·人工智能·学习
Cloud_Shy6187 小时前
解读《Effective Python 3rd Edition》:从练气到老魔(第五章 Item 33 - 35)
开发语言·人工智能·笔记·python·学习方法
做cv的小昊7 小时前
计算机图形学:【Games101】学习笔记08——光线追踪(辐射度量学、渲染方程与全局光照、蒙特卡洛积分与路径追踪)
图像处理·笔记·学习·计算机视觉·游戏引擎·图形渲染·概率论
星恒随风7 小时前
C++ 类和对象入门(五):初始化列表、explicit 和 static 成员详解
开发语言·c++·笔记·学习·状态模式
sensen_kiss9 小时前
CPT304 SoftwareEngineeringII 软件工程 2 Pt.8 软件测试 (Software Testing)(上)
学习·软件工程
力学与人工智能9 小时前
PPT分享 | 洛桑联邦理工学院魏震:深度几何学习在工业设计优化中的应用
学习·优化·工业设计·深度几何学习·洛桑联邦理工学院
sensen_kiss11 小时前
CPT304 SoftwareEngineeringII 软件工程 2 Pt.9 软件测试 (Software Testing)(下)
学习·软件工程
wu_ye_m11 小时前
学习c语言第35天 函数声明和定义
c语言·开发语言·学习