目录

ubuntu-学习笔记-nginxphp

ubuntu-学习笔记-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

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 ~ ^/apiphp(.*)$ {
			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