先週まで動いていたはずのAPIが動かないので
ログを確認すると
以下のエラーが出ていました。
エラー内容
/usr/sbin/httpd: symbol lookup error: /usr/lib64/libnsssysinit.so: undefined symbol: PR_GetEnvSecure
NSSのライブラリ?
触っていない。
見つけた解決策
centOS,Redhatは解決済み
http://stackoverflow.com/questions/42728905/google-client-php-api-err-empty-response-error
でもうちはAmazon Linux..
apatchの再起動しても動かない..
依存関係も確認した。
ldd /usr/lib64/libnsssysinit.so
linux-vdso.so.1 => (0x00007ffefe353000)
libnssutil3.so => /usr/lib64/libnssutil3.so (0x00007f7e05805000)
libplc4.so => /lib64/libplc4.so (0x00007f7e05600000)
libplds4.so => /lib64/libplds4.so (0x00007f7e053fb000)
libnspr4.so => /lib64/libnspr4.so (0x00007f7e051be000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f7e04fa2000)
libdl.so.2 => /lib64/libdl.so.2 (0x00007f7e04d9d000)
libc.so.6 => /lib64/libc.so.6 (0x00007f7e049db000)
librt.so.1 => /lib64/librt.so.1 (0x00007f7e047d3000)
/lib64/ld-linux-x86-64.so.2 (0x00005648fb388000)
もう一度stackoverflowを見直すと
解決策
Fixed by restarting Apache via stop and start (apachectl restart is not sufficient).
restart is not sufficient
リスタートじゃダメだと、バッチリ書いてあった。
[root@ip-xxx-xxx-x-xxx init.d]# sudo service httpd stop
Stopping httpd: [ OK ]
[root@ip-xxx-xxx-x-xxx init.d]# sudo service httpd start
Starting httpd: [ OK ]
以上で動くようになりました。
restartとstop&startの違い
https://doruby.jp/users/yokian/entries/Apache_restart_graceful_stop_
原因
定期的にsudo yum security update
していたので
そのタイミングで動かなくなったようです。