2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

GCP(f1-micro)のCentOS8にOpenLiteSpeedとEC-CUBE2.17をインストール

Posted at

##はじめに

EC-CUBE2.17からComposerが必要と聞いて。
折角なのでCentOS8とOpenLiteSpeedを使ってみました。

##構築する環境

  • Google Cloud Platform (f1-micro 無料枠)
  • CentOS8
  • OpenLiteSpeed1.5.10
  • EC-CUBE2.17

##各種設定

###rootパスワード設定、変更

SSHログイン後

sudo passwd root

rootでログイン(パスワードを入力)

su -

###タイムゾーン変更

timedatectl set-timezone Asia/Tokyo

###Firewall

firewall-cmd --add-port=80/tcp --permanent --add-port=443/tcp --permanent --add-port=7080/tcp --permanent
firewall-cmd --reload

(port7080はOpenLiteSpeed管理用)

###SELinux無効化のちreboot
※本番環境では適宜設定下さい。

vi /etc/selinux/config
SELINUX=enforcing ----> SELINUX=disabled に変更。

:wq

reboot

##OpenLiteSpeed Install
参考: https://blog.apar.jp/linux/10079/

dnf -y install epel-release
rpm -Uvh http://rpms.litespeedtech.com/centos/litespeed-repo-1.1-1.el8.noarch.rpm
dnf -y install openlitespeed

※ /usr/local/lswsに LiteSpeed Web Server がインストールされます。

###OpenLiteSpeed用php7.3 Install

dnf -y install lsphp73 lsphp73-devel lsphp73-pdo lsphp73-mbstring lsphp73-gd lsphp73-json lsphp73-pear lsphp73-pecl-apcu-devel zlib-devel lsphp73-xml lsphp73-mcrypt lsphp73-pgsql

####アカウント作成

/usr/local/lsws/admin/misc/admpass.sh

アカウントとパスを入力。

###起動・管理ページログイン

systemctl start lsws
chkconfig lsws on

からログイン。
Virtual Hostには初期設定でSampleが用意されているので、今回はそちらを使用。

####php設定
Server Configuration > External Appの
「Command」を

$SERVER_ROOT/lsphp73/bin/lsphp

に変更。

####サーバ設定

Listener Default > Generalの
「Address Settings」のポートを8088 -> 80に変更。

Virtual Hosts > Summary > Exampleの
「Virtual Host Root」-> /var/www/html/

Virtual Host Example > Generalの
「Document Root」 → $VH_ROOT

Index Filesを変更
Use Server Index Files -> No
Index Files -> Not set
Auto Index -> Yes
Auto Index URI -> Not set

####サーバ再起動

管理ツール右上の再起動ボタンを押す。

####php7.3のversion確認
http://IPaddress
(httpsではなく)

phpinfo()でバージョン確認。

vi /var/www/html/index.php
phpinfo();

##Composer Install

コマンドライン用のphp7.3

dnf install -y https://rpms.remirepo.net/enterprise/remi-release-8.rpm
dnf module install -y php:remi-7.3

Composer

php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php composer-setup.php
php -r "unlink('composer-setup.php');"
mv composer.phar /usr/local/bin/composer

##EC-CUBE Install

cd /var/www/html/
wget https://github.com/EC-CUBE/ec-cube2/releases/download/eccube-2.17.0/eccube-2.17.0.tar.gz
tar -zxvf eccube-2.17.0.tar.gz
cd ec-cube2
composer install --no-dev --no-interaction -o

##PostgreSQL Install
参考: https://qiita.com/tomlla/items/9fa2feab1b9bd8749584

dnf install -y @postgresql:10
/usr/bin/postgresql-setup --initdb

systemctl start postgresql
systemctl enable postgresql

そのままではPeer認証のためにログイン出来ないため、md5に変更。

su postgres -c 'psql --username=postgres'
ALTER USER postgres with encrypted password 'test_password_here';
vi /var/lib/pgsql/data/pg_hba.conf

最下部のidentをmd5に変更して再起動。

systemctl restart postgresql

###ログイン、DB作成

psql -U postgres -h localhost -W

パスワードを入れてログイン後

create database testdb;

\q (ログアウト)

##EC-CUBE設定

http://IP/ec-cube2/html/install/
にアクセス。

EC-CUBEのインストールを開始します。
アクセス権のチェック
必要なファイルのコピー
ECサイトの設定

上記を適宜設定。
※DBのユーザは「postgres」

データベースの設定
サイト情報について

適宜入力。インストールが完了したら
http://IP/ec-cube2/html/
でサイト確認。
お疲れさまでした。

##注意

###phpモジュールが入っているのにインストール時にエラーが出る

lsphp73-pgsqlが入っているにもかかわらず
[Error message: extension pgsql is not compiled into PHP]
のようなエラーが出る場合は、サーバ自体をrebootする。

###.htaccessの制限

1.5.10時点でVirtual Host > RewriteからAuto Load from .htaccessを有効に出来るが、無償版のOpenLiteSpeedには機能に制限があるため、.htaccessにアクセス制限などを書いても無視されるっぽい。そのため詳細設定は管理画面から直接行う必要がある。
なので、EC-CUBE2.17の管理画面にアクセス制限をかけたい場合などは注意。
また、設定した.htaccessもウェブサーバの再起動を行わないとなかなか反映されないなど。

2
1
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?