PHPがmemcached Unixソケットを使用できるようにsystemdを設定する方法は?

PHPがmemcached Unixソケットを使用できるようにsystemdを設定する方法は?

Ubuntu Server 16.04から18.04にアップグレードし、同時にPHP 5.6からPHP 7にアップグレードしようとしています。

そこに私は次のように付け加え/etc/memcached.confました。

-s /tmp/memcached.sock
-a 666

サービスを再起動すると、次のようになります。

srw-rw-rw- 1 memcache memcache 0 Nov 13 03:44 /tmp/systemd-private-7fc3b73707084a93bcc6abd22001eb7e-memcached.service-oIF206/tmp/memcached.sock=

UNIXソケットの場所がわかるようにsystemdをどのように設定しますか?

ベストアンサー1

systemdにはPrivateTmp=truememcached.serviceがあります。

1つの方法は特にPrivateTmpについて書き直すことですmemcached.service

mkdir -p /etc/systemd/system/memcached.service.d
echo "[Service]" > /etc/systemd/system/memcached.service.d/override.conf
echo "PrivateTmp=false" >> /etc/systemd/system/memcached.service.d/override.conf
systemctl daemon-reload
systemctl restart memcached

/tmpこれにより、memcached.serviceが代わりに使用に戻ります。/tmp/systemd-private-...

/tmp/memcahced.sockセッション処理にmemcachedを使用しているとします。セッションに正しい権限があることを確認したら、セッションサポートを変更または/etc/php.ini変更できます。/etc/php/conf.d/memcached.ini

[Session]
extension=memcached.so
session.save_handler="memcached"
session.save_path="/tmp/memcached.sock"

ある場合はコメントアウトしてくださいsession.save_handler=files

おすすめ記事