橡皮人

年少时,在文章中看到有一种人,被称作橡皮人
就是那种
吃饭要坐在最角落里
走路永远不敢跟对面过来的人直视
惧怕尴尬,却不知如何化解尴尬
讲尽量少的话
不敢谈恋爱
不敢分手
而于目前的我,不就是这样的吗?
这平凡而安逸的生活
早已消磨了年轻幼稚的斗念
我要这忙碌而闲乏的生活是为何?
我过了今天和过了明天又是为何?
这冷漠的、高傲的、悲哀的、可笑的、愚蠢的世界
可它并不能没有我、没有农民工、没有996的程序员们
这个飞驰发展的社会不能没有辛勤的劳动
而我这具精妙的机器
已经开始脱发
耳鸣
近视
发胖
而我挣来的那点钱,还要被用来买房、送礼、生小孩、送小孩读书
这些都不够啊
而我的活着
也只有偶尔的一杯咖啡、偶尔的一次温热,让我来的有点精神罢!
人生终究不过只是赶路而已,哪来的美景,哪来的风华,
天上的流星,更多的是那些还没有发出光芒就已经燃烧殆尽的小石子罢了。

修复symfony下swiftmail 无法发送邮件的问题

wpcraft项目中,本来是支持在部分情况下自动发送邮件的,但是今天测试一下发现好像不好使了,并且印象中好像没有修改到swiftmail的配置,甚至一度怀疑是smtp服务器把我的IP屏蔽了的缘故,但是后来试了一下phpmail却可以正常发送邮件,对比了一下,好像swiftmail默认的配置缺少点东西,于是按如下补上,修改app/config/parameters.yml

swiftmailer:
    transport: '%mailer_transport%'
    host: '%mailer_host%'
    username: '%mailer_user%'
    password: '%mailer_password%'
    port: '587'
    encryption: 'tls'
    spool: { type: memory }

添加了portencryption两个参数,结果一切正常,至于为什么突然要加这两项配置,我也挺纳闷…

做了一个极简的让wordpress支持markdown的插件,支持代码高亮

用过一些markdown的插件,要么就是用起来麻烦,要么就是写作体验差,于是只能手动撸一个了,安装后,写作时使用那个文本编辑器,直接写markdown的语法即可。

代码以及使用方法: https://github.com/yeskn-studio/markdown-one

编译安装php7.3

下载源码

cd ~ && wget http://cn2.php.net/distributions/php-7.3.0.tar.bz2

安装依赖

yum install -y bzip2 libxml2-devel libicu-devel gcc-c++

解压配置安装

tar -jxvf php-7.3.0.tar.bz2
cd php-7.3.0
./configure --prefix=/usr/local/php@7.3 --with-config-file-path=/etc/php@7.3 --enable-fpm --with-fpm-user=apache --with-fpm-group=apache --enable-intl --enable-mbstring --enable-pcntl --enable-sockets --enable-zip --enable-mysqlnd

# 我的web用户是apache,因此fpm用户指给了apache

提示:

error: Please reinstall the libzip distribution

尝试yum安装,但是yum版本过低,转为编译安装。

安装libzip

cd ~ && wget https://libzip.org/download/libzip-1.5.1.tar.xz
xz -d libzip-1.5.1.tar.xz
tar -xvf libzip-1.5.1.tar
cd libzip-1.5.1
mkdir build
cd build && cmake ..

提示cmake版本过低

安装cmake

cd ~ && yum remove cmake -y
wget https://cmake.org/files/v3.6/cmake-3.6.2.tar.gz
tar xvf cmake-3.6.2.tar.gz && cd cmake-3.6.2/
./bootstrap
gmake && gmake install
ln -s /usr/local/bin/cmake /usr/bin/
cmake --version

继续编译libzip

cd ~/libzip-1.5.1/build
cmake .. && make && make install

继续编译php

cd ~/php-7.3.0
./configure --prefix=/usr/local/php@7.3 --with-config-file-path=/etc/php@7.3 --enable-fpm --with-fpm-user=apache --with-fpm-group=apache --enable-intl --enable-mbstring --enable-pcntl --enable-sockets --enable-zip --enable-mysqlnd

提示:

error: off_t undefined; check your library configuration

根据https://segmentfault.com/q/1010000007346459

# 添加搜索路径到配置文件
echo '/usr/local/lib64
/usr/local/lib
/usr/lib
/usr/lib64'>>/etc/ld.so.conf

# 更新配置

ldconfig -v

继续

./configure --prefix=/usr/local/php@7.3 --with-config-file-path=/etc/php@7.3 --enable-fpm --with-fpm-user=_www --with-fpm-group=_www --enable-intl --enable-mbstring --enable-pcntl --enable-sockets --enable-zip --enable-mysqlnd

成功了,make it!

make && make install

测试时,在另外一个1G服务器上提示内存不足,创建swap分区临时解决:

mkdir /var/swap
dd if=/dev/zero of=/var/swap/swap_1G bs=2048 count=524288
chmod 0600 /var/swap/swap_1G
mkswap /var/swap/swap_1G
swapon /var/swap/swap_1G
echo "/var/swap/swap_1G swap swap default 0 0" >> /etc/fstab

# 检查
free --si -h

# 继续make
make && make install

后续操作

/usr/local/php@7.3/bin/php --version
/usr/local/php@7.3/bin/php --ini

# 此目录没有自动创建,创建它
mkdir /etc/php@7.3/php.ini

cp php.ini-production /etc/php@7.3/php.ini

#修改时区
sed -i 's/^;date.timezone =$/date.timezone = Asia\/Shanghai/g' /etc/php@7.3/php.ini

# 配置fpm
cp /usr/local/php@7.3/etc/php-fpm.conf.default /etc/php@7.3/php-fpm.conf
cp -r /usr/local/php@7.3/etc/php-fpm.d/ /etc/php@7.3
mv /etc/php@7.3/php-fpm.d/www.conf.default /etc/php@7.3/php-fpm.d/www.conf

sed -i 's#^include.*#include=/etc/php@7.3/php-fpm.d/*.conf#g' /etc/php@7.3/php-fpm.conf
#或手动修改/etc/php@7.3/php-fpm.conf最后的include行为:include = /etc/php@7.3/php-fpm.d/*.conf

mkdir -p /var/php@7.3/run
sudo chown -R apache /var/php@7.3

mkdir /var/php@7.3/run -p
sed -i 's#^pid =.*#pid = /var/php@7.3/run/php-fpm.pid#g' /etc/php@7.3/php-fpm.conf
#或手动修改/etc/php@7.3/php-fpm.conf中pid文件设置:pid = /var/php@7.3/run/php-fpm.pid

# 启动fpm(如果你的9000端口被占用了可能还需要修改端口)
/usr/local/php@7.3/sbin/php-fpm -y /etc/php@7.3/php-fpm.conf

# 重启fpm
kill -USR2 `cat /var/php@7.3/run/php-fpm.pid`

# 停止fpm
kill -INT `cat /var/php@7.3/run/php-fpm.pid`