• YFCMF-TP6 第一次配置 遇到挺多坑 令牌验证失败


    真坑啊,准备试验一下php8.0效果咋样,发现他还不支持8.0  阿西吧,然后装了php7.4最高版本的,保留php8.0下次修改完成后使用8.0

    环境准备

    线上环境 centos8.0+nginx1.8+php8+php7.4+mysql8

    线下环境 window10+nginx+php7.4+mysql5.7

    首先去官网下载安装包 

    https://iuok.cn/ 我这里是下载的zip安装包

    上传到linux服务器进行处理

    运行系统安装上后发现一直报反射类的一个错,然后开始安装php7.4

    这是php8的一个依赖,其中有几个是php8必须的,所以在安装php之前先执行一下这个

     yum -y install autoconf freetype gd libpng libpng-devel libjpeg libxml2 libxml2-devel zlib curl curl-devel net-snmp-devel libjpeg-devel php-ldap openldap-devel openldap-clients freetype-devel gmp-devel libzip libzip-devel sqlite-devel

    php8在安装之前需要先安装一下oniguruma依赖,这个不好下载

    安装oniguruma的时候可能没有configure,先执行autogen.sh进行生成configure 然后在执行./configure 进行安装

    完成之后进入php的解压文件夹内容进行编译,执行下列代码  意思是指定安装文件位置和开启php的模块  

    ./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc --enable-fpm --with-fpm-user=nginx --with-fpm-group=nginx --enable-mysqlnd --with-mysqli --with-pdo-mysql --enable-opcache --with-pcre-jit --enable-gd --with-jpeg --with-freetype --with-gettext --with-curl --with-openssl --enable-sockets --enable-mbstring --enable-xml --with-zip --with-zlib --with-snmp --with-mhash --enable-ftp --enable-bcmath --enable-soap --enable-shmop --enable-sysvsem --enable-pcntl --with-gmp

    如果显示欢迎使用php的话执行 make && make install

    安装完成后php就安装好了,需要配置php.ini 把php.ini从一开始解压的那个文件复制过来

    cp /mnt/php8.0/php.ini.dev~~ php.ini

    把php/etc/内容中带defunt的删掉defunt进行配置,复制一个最好

    然后检测php-fpm的语法是否正确

    /usr/local/php/sbin/php-fpm -t

    安装完php后在下面这个路径中有一个optache.so,配置到php.ini中

    /usr/local/php/lib/php/extensions/no-debug-non-zts-20200930

    在php.ini中配置

    zend_extension=/usr/local/php/lib/php/extensions/no-debug-non-zts-20200930/opcache.so

    设置开机启动

    vi ~/.bash_profile

    增加代码

    alias php=/usr/local/php/bin/php

    重载文件

    source ~/.bash_profile 

    nginx设置直接复制到后面就可以了nginx.conf

    server{
            listen 80;
            server_name blog.zhoujunfeng.cn;
            access_log logs/blog.access.log main;
            root html/blog/public;
            index index.php index.html;
            #为了YFtp加的
        	location /{
        		if (!-e $request_filename) {
                    rewrite  ^(.*)$  /index.php?s=/$1  last;
                    break;
                }		
        	}
            location ~ .php$ {
                fastcgi_pass   127.0.0.1:9001;
                fastcgi_index  index.php;
                fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
                fastcgi_param  PATH_INFO $1;
                include        fastcgi_params;
            }
    
            location /nginxstatus {
                stub_status;
            }
    
        }

      php和nginx配置完毕

    mysql的话直接官网上查看安装信息就可以了

    我看的是这个

    https://dev.mysql.com/doc/refman/8.0/en/binary-installation.html

    mysql安装上以后,就是配置YFtp了搞了一天

    报错信息呢就是令牌验证失败

    令牌验证失败的原因是session没有开启,权限不足,没有这个文件

    然后接下来就是权限不足导致的,要把你这个项目的文件所有权限都开了,或者都给一个用户,我这里是安装nginx的时候给nginx创建了一个用户,所以直接把所有权限赋值给nginx就可以了。

    还有一个错误是报的.env的错误,这个直接把.env删掉就可以了。

     最后在附上我的测试地址,就是他

    http://blog.zhoujunfeng.cn/

    一个96年的PHPER
  • 相关阅读:
    《javascript高级程序设计》第六章总结
    电子邮件写信页面开发代码
    JSON和XML的比较
    2014前端工程师基础课程作业
    cookie 和session 的区别详解
    substring()、slice()和substr()方法辨析
    Number()、parseInt()和parseFloat()辨析
    《javascript高级程序设计》第十三章知识点
    angular debounce 搜索去抖动/防抖
    js四舍五入保留两位小数的方法
  • 原文地址:https://www.cnblogs.com/zhouxiaohei/p/14578770.html
Copyright © 2020-2023  润新知