はじめに
PHP でcomposerをinstallしようとした際に使った手順まとめ
オフィシャルサイトに書いてあったコマンドをそのまんまコピペでinstallすることができる。
https://getcomposer.org/download/
今回はnginx, php-fpmで動作する環境を作る。
nginx install
yum install nginx -y
設定ファイル修正
cd /etc/nginx/conf.d
cp -p default.conf default.conf.org
vi default.conf
server {
listen 80;
server_name localhost;
root /usr/share/nginx/html/;
index index.php index.html index.htm;
location / {
try_files $uri $uri/ /index.php?$query_string;
}
location ~ \.php$ {
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass unix:/var/run/php-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param PATH_INFO $fastcgi_path_info;
include fastcgi_params;
}
}
/etc/nginx/nginx.conf に/etc/nginx/conf.d/default.conf をincludeする設定をするのを忘れずに。
自分はすっかり忘れて無駄な時間を費やしました。
上記設定が終わったら再起動する
systemctl restart nginx
php-fpmなどをinstall
yum -y --enablerepo=remi-php72,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 php-devel php-gd
php-fpmの設定ファイルを修正
cd /etc/php-fpm.d/
cp -p www.conf www.conf.org
vi www.conf
[www]
listen.allowed_clients = 127.0.0.1
user = nginx
group = nginx
listen = /var/run/php-fpm.sock
listen.owner = nginx
listen.group = nginx
pm = dynamic
pm.max_children = 50
pm.start_servers = 5
pm.min_spare_servers = 5
pm.max_spare_servers = 35
slowlog = /var/log/php-fpm/www-slow.log
php_admin_value[error_log] = /var/log/php-fpm/www-error.log
php_admin_flag[log_errors] = on
php_value[session.save_handler] = files
php_value[session.save_path] = /var/lib/php/session
[www]
listen.allowed_clients = 127.0.0.1
user = nginx
group = nginx
listen = /var/run/php-fpm.sock
listen.owner = nginx
listen.group = nginx
pm = dynamic
pm.max_children = 50
pm.start_servers = 5
pm.min_spare_servers = 5
pm.max_spare_servers = 35
slowlog = /var/log/php-fpm/www-slow.log
php_admin_value[error_log] = /var/log/php-fpm/www-error.log
php_admin_flag[log_errors] = on
php_value[session.save_handler] = files
php_value[session.save_path] = /var/lib/php/session
systemctl restart php-fpm
Composerのinstallコマンド
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php -r "if (hash_file('sha384', 'composer-setup.php') === 'a5c698ffe4b8e849a443b120cd5ba38043260d5c4023dbf93e1558871f1f07f58274fc6f4c93bcfd858c6bd0775cd8d1') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
php composer-setup.php
sudo mv composer.phar /usr/local/bin/composer
php -r "unlink('composer-setup.php');"
環境変数追加
公式ドキュメントにあるように
https://laravel.com/docs/6.x
環境変数のPATHにcomposerのbinを追加する必要がある。
export PATH="~/.composer/vender/bin:$PATH";
最新版のinstall
composer create-project --prefer-dist laravel/laravel cms
version指定したinstall。現在、
v5.5.28がinstall される。
composer create-project --prefer-dist laravel/laravel cms "5.5.*"
権限変更
sudo chown -R nginx:nginx cms/storage
sudo chmod -R 775 cms/storage
sudo chown `whoami` /usr/share/nginx/html/cms/storage/logs
selinuxを無効化
sudo setenforce 0
確認
installに成功すると、以下のような画面が表示する
http://{GLOBAL IP}/cms/public/index.php