VPS侦探论坛

 找回密码
 注册
查看: 6048|回复: 10

1.4安装多版本php问题

[复制链接]
发表于 2017-4-7 17:56:07 | 显示全部楼层 |阅读模式

我默认5.3 现在php5.6 请问如果重起 php5.6 问题

还有xcache,memcached,imageMagick 这些如果安装在php多版本的5.6

军哥解决一下 多版本真的是太好了 解决了很多程序问题
美国VPS推荐: 遨游主机LinodeLOCVPS主机云搬瓦工80VPSVultr美国VPS主机中国VPS推荐: 阿里云腾讯云。LNMP付费服务(代装/问题排查)QQ 503228080
 楼主| 发表于 2017-4-7 18:01:06 | 显示全部楼层


重起命令知道了
/etc/init.d/php-fpm5.6 restart
安装xcache,memcached,imageMagick 多版本怎么搞
Linux下Nginx+MySQL+PHP自动安装工具:https://lnmp.org
 楼主| 发表于 2017-4-7 18:44:37 | 显示全部楼层

多版本还有一个问题是 open_basedir 一直是读根目录 改变user.ini 求解决 现在thinkphp5 一直错误
美国VPS推荐: 遨游主机LinodeLOCVPS主机云搬瓦工80VPSVultr美国VPS主机中国VPS推荐: 阿里云腾讯云。LNMP付费服务(代装/问题排查)QQ 503228080
 楼主| 发表于 2017-4-7 19:50:27 | 显示全部楼层



open_basedir 一直是读根目录
后面删除了 自己安装了php 发现nginx有个配置
enable-php.conf
不妨改成
        location ~ \.php$ {
            #fastcgi_pass        127.0.0.1:9000;
            fastcgi_pass  unix:/tmp/php-cgi5.6.sock;
            fastcgi_index          index.php;
            fastcgi_param          SCRIPT_FILENAME  $document_root$fastcgi_script_name;
            include                fastcgi_params;
        }

可能解决一直限制跟目录问题 回头验证一下
Linux下Nginx+MySQL+PHP自动安装工具:https://lnmp.org
发表于 2017-4-8 09:12:15 | 显示全部楼层

多php版本的扩展安装要测试完后过段时间发布

3楼你说的问题发一下错误信息和你.user.ini 的内容及/usr/local/nginx/conf/fastcgi.conf

军哥运维代购:http://shop63846532.taobao.com/

 楼主| 发表于 2017-4-8 23:12:17 | 显示全部楼层

我回复一下军哥
然后在说一下解决方案 可能不是最佳 希望正式版可以解决这个问题 目前安装thinkphp5 绑定到public 应该都是报错如下

Warning: require(): open_basedir restriction in effect. File(/home/wwwroot/lnmp.org/aa/thinkphp/start.php) is not within the allowed path(s): (/home/wwwroot/lnmp.org/aa/public/:/tmp/:/proc/) in /home/wwwroot/lnmp.org/aa/public/index.php on line 19

Warning: require(/home/wwwroot/lnmp.org/aa/thinkphp/start.php): failed to open stream: Operation not permitted in /home/wwwroot/lnmp.org/aa/public/index.php on line 19

Fatal error: require(): Failed opening required '/home/wwwroot/lnmp.org/aa/public/../thinkphp/start.php' (include_path='.:/usr/local/php/lib/php') in /home/wwwroot/lnmp.org/aa/public/index.php on line 19

user.ini 默认就是 open_basedir=/home/wwwroot/lnmp.org/aa/public:/tmp/:/proc/
修改成 /home/wwwroot/lnmp.org/aa也一样报错 直接删除 user.ini 也一样报错 应该是user.ini 不起作用

原因应该是fastcgi.conf 最后一行 fastcgi_param PHP_ADMIN_VALUE "open_basedir=$document_root/:/tmp/:/proc/"; 在做怪

/usr/local/nginx/conf/fastcgi.conf
fastcgi_param  SCRIPT_FILENAME    $document_root$fastcgi_script_name;
fastcgi_param  QUERY_STRING       $query_string;
fastcgi_param  REQUEST_METHOD     $request_method;
fastcgi_param  CONTENT_TYPE       $content_type;
fastcgi_param  CONTENT_LENGTH     $content_length;

fastcgi_param  SCRIPT_NAME        $fastcgi_script_name;
fastcgi_param  REQUEST_URI        $request_uri;
fastcgi_param  DOCUMENT_URI       $document_uri;
fastcgi_param  DOCUMENT_ROOT      $document_root;
fastcgi_param  SERVER_PROTOCOL    $server_protocol;
fastcgi_param  REQUEST_SCHEME     $scheme;
fastcgi_param  HTTPS              $https if_not_empty;

fastcgi_param  GATEWAY_INTERFACE  CGI/1.1;
fastcgi_param  SERVER_SOFTWARE    nginx/$nginx_version;

fastcgi_param  REMOTE_ADDR        $remote_addr;
fastcgi_param  REMOTE_PORT        $remote_port;
fastcgi_param  SERVER_ADDR        $server_addr;
fastcgi_param  SERVER_PORT        $server_port;
fastcgi_param  SERVER_NAME        $server_name;

# PHP only, required if PHP was built with --enable-force-cgi-redirect
fastcgi_param  REDIRECT_STATUS    200;
fastcgi_param PHP_ADMIN_VALUE "open_basedir=$document_root/:/tmp/:/proc/";


里面lnmp.org是替换了我域名
 楼主| 发表于 2017-4-8 23:31:13 | 显示全部楼层

解决方法就是删除
fastcgi_param PHP_ADMIN_VALUE "open_basedir=$document_root/:/tmp/:/proc/";
然后
user.ini 默认就是 open_basedir=/home/wwwroot/lnmp.org/aa/public:/tmp/:/proc/
把 /public 删除
变成
open_basedir=/home/wwwroot/lnmp.org/aa:/tmp/:/proc/
就可以了 重起 nginx和php


1.4版本加了
fastcgi_param PHP_ADMIN_VALUE "open_basedir=$document_root/:/tmp/:/proc/";
后就限制到根目录里 并且user.ini 失效

军哥正式版改进一下这个问题
美国VPS推荐: 遨游主机LinodeLOCVPS主机云搬瓦工80VPSVultr美国VPS主机中国VPS推荐: 阿里云腾讯云。LNMP付费服务(代装/问题排查)QQ 503228080
 楼主| 发表于 2017-4-8 23:32:41 | 显示全部楼层

还有一个问题 多版本 这个应该怎么安装 xcache,memcached,imageMagick
希望改进一下 安装的时候选择一些php版本就完美了
Linux下Nginx+MySQL+PHP自动安装工具:https://lnmp.org
发表于 2017-4-9 09:45:16 | 显示全部楼层

回复 7# 的帖子


你网站root设置的是多少

5楼已经说过要测试一段时间

军哥运维代购:http://shop63846532.taobao.com/

 楼主| 发表于 2017-4-9 23:37:25 | 显示全部楼层



网站root是
/home/wwwroot/lnmp.org/aa/public
thinphp5 官方建议这样

/home/wwwroot/lnmp.org/aa/
放的是thinkphp和application主要文件夹内容
发表于 2017-4-10 10:44:41 | 显示全部楼层

fastcgi.conf中是按网站root的,超出就无法访问的

不需要跨目录可以使用tools目录下的./remove_open_basedir_restriction.sh 脚本进行移除
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|VPS侦探 ( 鲁ICP备16040043号-1 )

GMT+8, 2024-9-27 09:23 , Processed in 0.029353 second(s), 17 queries .

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表