标题:
[教程]
安装多版本共存遇到的坑
[打印本页]
作者:
wanggenfu
时间:
2018-10-13 23:29
标题:
安装多版本共存遇到的坑
因业务需求需要在服务器上单独运营一个PHP7的环境,这里把遇到的一些问题及解决方法与大家分享一下。
服务器上WDCP版本:v3.2.21、PHP环境是5.6、WEB引擎是N+A。
第一个问题就是PHP环境安装,按照官方指导:【官方链接】
wget http://down.wdlinux.cn/in/phps.sh
sh phps.sh
(共支持7个版本的PHP,如5.2.17/5.3.29/5.4.45/5.5.38/5.6.30/7.0.18/7.1.4)
默认安装使用版本,可以针对或选择性安装某个版本,如
sh phps.sh 7.1.4
即可安装7.1.4
这里碰到的一个坑就是安装到最后就会出现:
checking for IMAP Kerberos support... no
checking for IMAP SSL support... no
checking for Firebird support... no
checking whether to enable internationalization support... yes
checking for icu-config... no
checking for location of ICU headers and libraries... not found
configure: error: Unable to detect ICU prefix or no failed. Please verify ICU install prefix and make sure icu-config works.
make: *** No targets specified and no makefile found. Stop.
x86_64
CentOS release 6.8 (Final)
----Install Error: 7.1.4 -----------
复制代码
查了N久才发现是由于云锁引起的,此时把云锁停止掉再进行安装还是不行。
解决方案就是先将云锁卸载掉,等成功安装上PHP7后再重装安装云锁。附云锁卸载命令:
echo y|/usr/local/yunsuo_agent/uninstall
复制代码
安装云锁的话直接通过WDCP控制面板就可以安装了。
第二个问题是安装成功后,给某个站点(thinkphp5框架)设置指定的PHP7.1环境后,除了首页可以正常访问之外,其它所有的页面都访问都跳转到了首页(如果是其它程序并设置的伪静态就有可能出现404页面)。一开始想到就是伪静态的配置问题,站点根目录下的.htaccess改了没有用、WDCP面板里站点设置中指定伪静态同样没有用。后排查许久终于解决问题:
打开/www/wdlinux/nginx-1.8.1/conf/vhost/对应站点域名.conf,添加如下代码:
location / {
# THINKPHP5 伪静态配置
if (!-e $request_filename){
rewrite ^(.*)$ /index.php?s=$1 last; break;
}
#---------------根据自己站点自定义伪静态
try_files $uri $uri/ /index.php?$args;
}
复制代码
大功告成!!!
另外吐槽一下,这里发图片,含中文的图片都上传失败。。。。
欢迎光临 WDlinux官方论坛 (http://wdlinux.cn/bbs/)
Powered by Discuz! 7.2