一些坑爹的事 = =

前段时间嘛一直在折腾 WordPress

有天看到某舰娘群里萌萌的 KB 说要上 PHP 7 ,方才想起我的 PHP 5.5.9 了 = =。在提及了我的版本号以后, KB 聚聚推荐我升级到 PHP 5.6。

升级 PHP


关于这事,本来我都打算去 clone 源码自编译了,这时候群里的 HJC 聚聚提醒说 Ubuntu 下应该优先找找 PPA。

Google 了一番过后,发现这玩意可以免去自编译的痛苦。于是在此记录一下加入 PHP 5.6 PPA 的步骤。

sudo apt-get purge php* //卸载原有的 PHP

sudo apt-get update

sudo apt-get install python-software-properties //必要依赖

sudo add-apt-repository ppa:ondrej/php5-5.6

sudo apt-get update && sudo apt-get upgrade

sudo apt-get install php5

好了,经过以上步骤过后, PHP 就升级到 5.6 了。

重新配置 uWSGI


升级完 PHP 过来,紧接着我发现另一个更加重要的问题,那就是我的神奇 PHP 后端 uWSGI 启动失败了 = = Orz

一直以来都是用 supervisor 启动的我决定手动debug。

在看到error log以后,发现是 php-plugin.ini 调用的依赖没了 = =

Ubuntu 源自带的东西比较旧了,这插件也是基于 PHP 5.5.9 编译的 = = Orz

好吧,找到问题所在,接下来就要想办法解决了 = =

我们先来升级一下 uWSGI ,步骤如下

sudo apt-get purge uwsgi*
sudo apt-get install build-essential python
sudo apt-get install python-dev
sudo apt-get install python-pip
sudo pip install uwsgi

这样我们就会在萌萌的 /usr/local/bin/ 里头看到一个 uwsgi(隐患)

接下来是编译并且安装 PHP 处理插件

uwsgi --build-plugin https://github.com/unbit/uwsgi-phpsgi

没错就这么简单,然而我当时却绕了不少的弯子 – –

配置 Supervisor 启动 uWSGI


这玩意可是坑了我好久好久,但是我不打算把思考过程发出来了 = =

直接上配置方法

写入 /etc/supervisor/conf.d/uwsgi.conf:

[program:uwsgi-php]
directory = /usr/local/bin/
command=uwsgi
--plugin php
--master
--socket :3030
--processes 6
--php-allowed-ext .php
--php-allowed-ext .inc
stopsignal=QUIT
user=www-data
autostart=true
autorestart=true
stdout_logfile=/home/XXX/error.log  //XXX代表你的用户名
redirect_stderr=true

最后依次运行

sudo service nginx restart
sudo service supervisor restart

 

发布者

Lawrence

不过一介御用闲人

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

这个站点使用 Akismet 来减少垃圾评论。了解你的评论数据如何被处理