[CentOS7][nginx][PHP7.3]Laravelをインストールしてみた。

いくつか躓いたので手順を残しておく。

既に運用済みのドメイン配下のディレクトリhogeで動作するようにした。

まずは必要なライブラリのインストール

yum -y install --enablerepo=remi,remi-php73 php-devel php-pecl-zip

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
composer global require "laravel/installer=~1.1"

nginxの設定

location ^~ /hoge{
    alias /var/www/hoge/public;
    try_files $uri $uri/ @laravel;
    index index.php;

    location ~ \.php$ {
        fastcgi_split_path_info ^(.+\.php)(/.+)$;
        fastcgi_pass 127.0.0.1:9000;
        include fastcgi_params;
        fastcgi_param SCRIPT_FILENAME /var/www/hoge/public/index.php;
    }
}
    
location @laravel {
    rewrite /hoge/(.*)$ /hoge/index.php?/$1 last;
}

 

Laravelのインストール

~/.config/composer/vendor/bin/laravel new hoge
chown -R nginx:nginx hogehoge
systemctl restart nginx

Laravelの設定

vim /var/www/hogehoge/.env

APP_KEYに32桁のランダムな文字列を設定

その他環境に応じて設定

ブラウザでアクセスしてLaravelの画面が表示できたら成功。

[CentOS7][Nginx][PHP]7.3をインストール

WordPressで推奨されるPHPのバージョンが7.3以上だったので重い腰を上げてバージョンアップをした。

PHPを全部削除

yum remove php*

7.3をインストール

yum -y --enablerepo=remi-php73,epel install php-fpm php-gd php-gmp php-mbstring php-mcrypt php-opcache php-pdo php-pear-MDB2-Driver-mysqli php-pecl-memcached php-pecl-msgpack php-xml

実行ユーザーがデフォルトだとapacheなのでnginxへ変更

vim /etc/php-fpm.d/www.conf
-user = apache
+user = nginx

-group = apache
+group = nginx

php-fpmを再起動および、バージョンの確認

systemctl restart php-fpm
php -v

ここまでで問題なければ終了。

[CentOS7]nginx環境へWordPressの設置

手順①WordPressのダウンロードおよび設置

cd /tmp
wget https://ja.wordpress.org/wordpress-4.9.8-ja.tar.gz
tar -zxvf wordpress-4.9.8-ja.tar.gz -C /var/www/nyahun.net/
cd /var/www/nyahun.net
chown -R nginx:nginx wordpress

手順② データベースの作成

mysql -u root -p
create database memo;
create user 'memo'@'localhost' identified by 'password';
grant create,select,insert,update,delete on memo.* to 'memo';
flush privileges;
exit;

手順③ nginxの設定

 

[CentOS7]nginxをインストール

手順① nginxのインストール

nginxリポジトリの追加

vim /etc/yum.repos.d/nginx.repo
[nginx]
 name=nginx
 repo baseurl=http://nginx.org/packages/mainline/centos/7/$basearch/
 gpgcheck=0
 enabled=1$

インストール

yum install nginx

起動および常駐

systemctl start nginx
systemctl enable nginx

 

ブラウザで表示を確認して完了。手順② SSL証明書対応

Let’s Encryptを導入する。

yum install certbot-nginx

証明書を発行する。

certbot --nginx -d nyahun.net

 

途中の選択肢で、httpでアクセスされたらhttpsへリダイレクトする設定を選択。
crontabへ証明書更新を追加。

vim /etc/crontab

0 0 * * * root /usr/bin/certbot renew --post-hook "systemctl restart nginx.service" > /dev/null 2>&1

手順③ HTTP2化

vim /etc/nginx/conf.d/nyahun.net.conf

listen       443 ssl http2;
systemctl restart nginx