PR

【CentOS】OpenLiteSpeed Web サーバーとNextCloudのインストールについて

概要

Apache2からLiteSpeed Webサーバーに切り替えてみた。Apaheより高速であるけれど少しくせがあるようで少しわかりずらいというかむず痒いところが届かないですが試してみると意外と楽しく、運用できます。CentOSでの導入情報になります。

導入編
sudo dnf -y groupinstall base
sudo dnf -y groupinstall development
sudo dnf -y groupinstall network-tools
sudo dnf -y install epel-release
rpm -Uvh http://rpms.litespeedtech.com/centos/litespeed-repo-1.1-1.el7.noarch.rpm
sudo dnf -y install openlitespeed
wget -O - http://rpms.litespeedtech.com/debian/enable_lst_debian_repo.sh | sudo bash
sudo apt update
sudo apt install openlitespeed
sudo apt install lsphp74
sudo ln -sf /usr/local/lsws/lsphp74/bin/lsphp /usr/local/lsws/fcgi-bin/lsphp5
sudo /usr/local/lsws/bin/lswsctrl start
sudo /usr/local/lsws/admin/misc/admpass.sh
起動
service lsws start
停止
service lsws stop
自動起動ON
chkconfig lsws on
自動起動OFF
chkconfig lsws off
自動起動の設定確認
chkconfig --list lsws
HTTP(80/tcp) と HTTPS(443/tcp) を許可します。
firewall-cmd --add-port=80/tcp --permanent 
firewall-cmd --add-port=443/tcp --permanent
firewall-cmd --add-port=7080/tcp --permanent
firewall-cmd --reload
初期設定
コマンド
/usr/local/lsws/admin/misc/admpass.sh 

詳細のLiteSpeedのインストールメモはこちら

ここから先はNextCloudのインストール
wget https://download.nextcloud.com/server/releases/.tar.bz2
wget https://download.nextcloud.com/server/releases/nextcloud-18.0.4.tar.bz2.md5
md5sum -c nextcloud-18.0.4.tar.bz2.md5 < nextcloud-18.0.4.tar.bz2
tar xf nextcloud-18.0.4.tar.bz2
sudo rm nextcloud-18.0.4.tar.bz2
sudo rm nextcloud-18.0.4.tar.bz2.md5 
mv nextcloud/* ./
PHP導入とコンパイル
apt install libbz2-dev zlib1g-dev zlib1g libsqlite3-dev libxml2-dev pkg-config build-essential libssl-dev libmcrypt-dev sqlite3 libcurl4-openssl-dev libpng-dev libfreetype6-dev gmp-ecm libgmp-dev gmp-doc gmp-ecm libecm1 libgmp3-dev libgmp-dev libgmp3-dev libgmpxx4ldbl libonig-dev libzip-dev memcached libyaml-perl
apt install lsphp80* -y
php8 オプションの指定
'--with-mysqli' '--with-zlib' '--enable-gd' '--enable-shmop' '--enable-sockets' '--enable-sysvsem' '--enable-sysvshm' '--enable-mbstring' '--with-iconv' '--with-pdo-mysql' '--enable-ftp' '--with-zip' '--with-curl' '--enable-soap' '--enable-xml' '--with-openssl' '--enable-bcmath' '--enable-litespeed' '--with-mcrypt' '--with-bz2' '--enable-json' '--enable-gd' '--with-freetype' '--enable-intl' '--with-gmp' '--with-zip' '--with-mysql-sock=/var/run/mysqld/mysqld.sock' '--with-imagick=/usr/local/lsws/lsphp80' '--with-php-config=/usr/local/lsws/lsphp80/bin/php-config' '--enable-opcache' '--with-xmlrpc' '--with-gettext' '--with-jpeg-dir=/usr/lib64/libjpeg.so' '--enable-pcntl' '--enable-exif' '--with-tidy' '--with-sodium=/usr/local/lsws/lsphp80'
コマンド モジュールの読み込み確認
[lsphp80]bin/php -m
[lsphp80]pecl install imagick
[lsphp80]pecl install apcu

リストにmemcachedとOPcacheがあることを確認する なけばパスを設定する
extension=memcached.so
extension=imagick.so
extension=apcu.so
zend_extension=opcache.so

[lsphp8/lib]/php.ini

PHP OPcacheモジュールについては、OpenLiteSpeedには対応してないとのことですので作業はこれで完了

Nextcloud キャッシュ有効にする

次にNextcloudの設定ファイルについて 'memcache.local' => '\OC\Memcache\APCu', を最後の行に追加する。

Q&A

メモリートラブル Error

PHP Fatal error:  Allowed memory size of 3221225472 bytes exhausted (tried to allocate 20480 bytes) in lib/private/AppFramework/Utility/SimpleContainer.php on line 133

解決方法

PHPの設定を変更
[apucu]
apc.enabled = 1
apc.enable_cli=1
;apc.shm_size = 512M

vim lsphp8/lib/php.ini

コメント

タイトルとURLをコピーしました