10m带宽做下载网站,免费的短视频素材库,企业网站建设与推广范文,页面模板怎么用提示#xff1a;文章写完后#xff0c;目录可以自动生成#xff0c;如何生成可参考右边的帮助文档 文章目录 前言一、项目介绍1.1项目环境架构LNMP1.2项目代码说明 二、项目环境搭建2.1 Nginx安装2.2 php安装2.3 nginx配置和php配置2.3.1 修改nginx文件2.3.2 修改vim /etc/p… 提示文章写完后目录可以自动生成如何生成可参考右边的帮助文档 文章目录 前言一、项目介绍1.1项目环境架构LNMP1.2项目代码说明 二、项目环境搭建2.1 Nginx安装2.2 php安装2.3 nginx配置和php配置2.3.1 修改nginx文件2.3.2 修改vim /etc/php-fpm.d/www.conf文件2.3.3 修改 vim /etc/php.ini 2.4 测试是否正常 三、部署项目和测试四、代码部署故障-php执行出错问题解决五、总结 前言 
日常需要访问很多链接都需要保存到收藏夹比较麻烦使用浏览器账户登录需要每台电脑都登陆账号比较麻烦就做了一个云导航项目部署到自己购买的阿里云服务器无论在哪台电脑都可打开登录访问自己收藏的网址。  一、项目介绍 
1.1项目环境架构LNMP 
架构Nginx  PHP(php-fpm)  xml 用不到mysql就不进行安装了。  
1.2项目代码说明 
运用的技术jsajax(xhr请求)(查)php(增删改)PHP SimpleXML解析xml  
二、项目环境搭建 
VMware版本VMware16 Pro 16.1.2 build-17966106 linux操作系统版本统信UOS Server 20 1060a  
2.1 Nginx安装 安装Nginx软件的方式有很多种分为如下几种 1.源码编译Nginx (1.版本随意 2.安装复杂 3.升级繁琐) 2.epel仓库Nginx (1.版本较低 2.安装简单 3.配置不易读) 3.官方仓库Nginx (1.版本较新 2.安装简单 3.配置易读强烈推荐) yum标准安装操作请参考https://www.cnblogs.com/caijiuge/p/16702656.html 安装依赖yum install -y gcc gcc-c autoconf pcre pcre-devel make automake httpd-tools yum-utils
yum方式安装命令yum install nginx  启动命令systemctl start nginx
重启命令systemctl restart nginx
停止命令systemctl start nginx
查看状态命令systemctl status nginx
开机启动命令systemctl enable nginx]防火墙设置打开端口  
注源码编译安装一般会创建一个nginx用户1.创建用户useradd -M -s /sbin/nologin nginx [-M  不创建主目录 -s  不允许登录 -g 加入用户组] 浏览器访问测试出现这个界面说明安装成功。  
2.2 php安装 
使用php-fpm,php中的mod_php模式和mode_fastcgi和php-fpm模式,php-fpm是fastcgi模式的管理器。 nginx本身不能处理PHP它只是个web服务器当接收到请求后如果是php请求则发给php解释器处理并把结果返回给客户端。 nginx一般是把请求发fastcgi管理进程处理fascgi管理进程选择cgi子进程处理结果并返回. PHP-FPM是一个PHP FastCGI管理器是只用于PHP的,可以在 http://php-fpm.org/download下载得到. PHP-FPM其实是PHP源代码的一个补丁旨在将FastCGI进程管理整合进PHP包中。必须将它patch到你的PHP源代码中在编译安装PHP后才可以使用。 新版PHP已经集成php-fpm了不再是第三方的包了推荐使用。PHP-FPM提供了更好的PHP进程管理方式可以有效控制内存和进程、可以平滑重载PHP配置比spawn-fcgi具有更多优点所以被PHP官方收录了。在./configure的时候带 –enable-fpm参数即可开启PHP-FPM其它参数都是配置php的PHP在 5.3.3 之后已经讲php-fpm写入php源码核心了。 编译安装半天失败了 最后直接yum方式安装。 
#新版php-fpm安装(推荐安装方式)
$ mkdir /usr/local/php
$ wget https://www.php.net/distributions/php-8.3.3.tar.gz
$ tar -zxvf php-8.3.3.tar.gz
$ cd php-8.3.3$ ./configure --prefix/usr/local/php --enable-fpm --with-openssl $ make 
$ make installyum -y install php
yum -y install php-fpm安装结果   启动命令systemctl start php-fpm 重启systemctl restart php-fpm 停止命令systemctl stop php-fpm 查看状态命令systemctl status php-fpm 开机自启命令systemctl enable php-fpm  php和php-fpm的配置文件位置:  
2.3 nginx配置和php配置 Nginx和PHP-FPM的进程间通信有两种方式,一种是TCP,一种是UNIX Domain Socket. 其中TCP是IP加端口,可以跨服务器.而UNIX Domain Socket不经过网络,只能用于Nginx跟PHP-FPM都在同一服务器的场景.用哪种取决于你的PHP-FPM配置: 方式1:vim /etc/php-fpm.d/www.conf 和vim /etc/nginx/nginx.conf php-fpm.conf: listen  127.0.0.1:9000 nginx.conf: fastcgi_pass 127.0.0.1:9000; 方式2: php-fpm.conf: listen  /tmp/php-fpm.sock nginx.conf: fastcgi_pass unix:/tmp/php-fpm.sock; 其中php-fpm.sock是一个文件,由php-fpm生成,类型是srw-rw----. 选用方式1主进程php-fpm主要是管理fastcgi子进程监听9000端口。 fastcgi子进程等待来自Web Server的连接。Nginx通过location指令将所有以php为后缀的文件都交给127.0.0.1:9000来处理即Nginx通过location指令将所有以php为后缀的文件都交给127.0.0.1:9000来处理。 
2.3.1 修改nginx文件 
Nginx配置运行php 编辑/etc/nginx/nginx.conf加入如下语句 server {             		listen 80; 	        server_name www.xxx.com;  			     	    location / {                					root /usr/local/Testphp/;     			        index  index.html index.htm index.php;      					} 		 	         location ~\.php$ {                					root /usr/local/Testphp;                					fastcgi_pass 127.0.0.1:9000;指定了fastcgi进程侦听的端口,nginx就是通过这里与php交互的            					
#fastcgi_pass unix:/run/php-fpm/www.sock;
fastcgi_index index.php; 					# fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;   					fastcgi_param SCRIPT_FILENAME /usr/local/Testphp$fastcgi_script_name;     					include fastcgi_params;         					} 	}				2.3.2 修改vim /etc/php-fpm.d/www.conf文件 
;listen  /run/php-fpm/www.sock
listen  127.0.0.1:90002.3.3 修改 vim /etc/php.ini 
#在最后一行
extensionmbstring.so
extensionphp_gd2.dll
:wq!
#保存退出即可
#重启php-fpm服务
systemctl restart php-fpm2.4 测试是否正常 
创建index.php文件放入项目目录php测试代码内容 
?php
echo phpinfo();
?出现此界面代表配置成功了。  
三、部署项目和测试 
将项目就放入上面配置好的目录中即可 /usr/local/Testphp/注意 注适合windows系统的项目不一定在linux 完全运行由于代码 路径 // \ ,不一样需要注意。 
四、代码部署故障-php执行出错问题解决 
问题 云导航 代码部署到linux系统后addlink.php dellink.php uplink.php总是执行错误 原因 PHP环境的问题。安装的php ,脚本中用到了simplexml解析xml文件或字符串simpexml可能有问题simplexml_load_file(“$nxml2”) 无法执行所以报错。具体原因暂未找到这个所有不管了。 解决办法 直接重新安装下 yum install php-xml php-xmlrpc 即可解决。 ----20240224 解决 ----还是要看报错信息 ----什么都是对的 找了半天问题 
五、总结 
遇到问题的处理思路 如果是项目问题着手点代码用了哪些环境哪些依赖包 是否都已经具备 查看断点执行情况、查看日志情况需要故障线索。 笔记记录日期2020年04月03日