機能追加 #1678
履歴
#2 山本 義治 が6年以上前に更新
アプリケーション構築¶
Laravel条件
PHP >= 7.1.3
https://laravel.com/docs/5.6/installation
php5.4→そのまま
php7.2→PHP-FPMとして新規起動
PHP7.2インストール¶
[root]# yum install php72 php72-php-fpm php72-php-gd php72-php-xml php72-php-mbstring php72-php-mysqlnd php72-php-mcrypt php72-php-zip
シンボリックリンク作成
[root]# rm /usr/local/bin/php [root]# ln -s /usr/bin/php72 /usr/local/bin/php
PHP-FPM起動¶
[root]# /etc/init.d/php72-php-fpm start [root]# chkconfig php72-php-fpm on
mod_fcgiインストール¶
[root]# wget http://repoforge.mirror.digitalpacific.com.au/redhat/el6/en/x86_64/rpmforge/RPMS/mod_fastcgi-2.4.6-1.el6.rf.x86_64.rpm [root]# yum install mod_fastcgi-2.4.6-1.el6.rf.x86_64.rpm [root]# vi /etc/httpd/conf.d/fastcgi.conf FastCgiWrapper Off ScriptAlias /fcgi-bin/ /var/www/fcgi-bin/ FastCGIExternalServer /var/www/fcgi-bin/php-fpm -host 127.0.0.1:9000 AddHandler php-fastcgi .php Action php-fastcgi /fcgi-bin/php-fpm
バーチャルホスト設定¶
[root]# vi /etc/httpd/conf/httpd.conf <VirtualHost *:80> DocumentRoot /var/www/haloo_navi_shindan/public ServerName shindan.haloonavi.com ErrorLog logs/haloo_navi_shindan-error_log CustomLog logs/haloo_navi_shindan-access_log combined AddHandler php-fastcgi .php Action php-fastcgi /fcgi-bin/php-fpm <FilesMatch \.php$> SetHandler php-fastcgi </FilesMatch> <Directory "/var/www/haloo_navi_shindan/public"> Options Indexes FollowSymLinks +ExecCGI AllowOverride All Order allow,deny Allow from all </Directory> </VirtualHost>
apache再起動¶
[root]# /etc/init.d/httpd restart
ソースダウンロード¶
[admin]$ cd /var/www/ [admin]$ git clone admin@49.212.24.211:/opt/git/haloo_navi_shindan.git [admin]$ cd haloo_navi_shindan/ [admin]# vi public/phpinfo.php <?php phpinfo();?>
PHP7.2動作確認¶
http://shindan.haloonavi.com/phpinfo.php
composerインストール¶
[root]# curl -sS https://getcomposer.org/installer | php [root]# mv composer.phar /usr/local/bin/composer
npmインストール¶
git cloneでfatal: HTTP request failedため以下インストール
[root]# yum update -y nss curl libcurl
[admin]$ git clone https://github.com/creationix/nvm.git ~/.nvm [admin]$ source ~/.nvm/nvm.sh vi ~/.bash_profile [admin]$ nvm --version 0.33.11 [admin]$ nvm install v8.11.3 [admin]$ node -v v8.11.3 [admin]$ npm -v 5.6.0
パーケージインストール¶
[admin]$ cd /var/www/haloo_navi_shindan [admin]$ composer install
依存パッケージインストール
[root]# yum install libpng* -y [admin]$ npm i ajv
[admin]$ npm install
ログパーミッション設定¶
[root]# chmod 777 storage/* [root]# chmod 777 storage/framework/* [root]# chmod 777 bootstrap/cache/
.envファイル生成¶
[admin]$ php artisan key:generate [admin]$ vi .env APP_NAME=PersonalityNavi APP_ENV=production APP_KEY=base64:omDFoM2vu6ByqvriqRl484+zBR8+ODFAbiyGtUuwDho= APP_DEBUG=false APP_URL=http://shindan.haloonavi.com LOG_CHANNEL=stack DB_CONNECTION=mysql DB_HOST=127.0.0.1 DB_PORT=3306 DB_DATABASE=haloo_navi_shindan DB_USERNAME=root DB_PASSWORD=szm9vx8nza BROADCAST_DRIVER=log CACHE_DRIVER=file SESSION_DRIVER=file SESSION_LIFETIME=120 QUEUE_DRIVER=sync REDIS_HOST=127.0.0.1 REDIS_PASSWORD=null REDIS_PORT=6379 MAIL_DRIVER=log MAIL_HOST=smtp.mailtrap.io MAIL_PORT=2525 MAIL_USERNAME=null MAIL_PASSWORD=null MAIL_ENCRYPTION=null PUSHER_APP_ID= PUSHER_APP_KEY= PUSHER_APP_SECRET= PUSHER_APP_CLUSTER=mt1 MIX_PUSHER_APP_KEY="${PUSHER_APP_KEY}" MIX_PUSHER_APP_CLUSTER="${PUSHER_APP_CLUSTER}" GITHUB_OAUTH_APP_ID=a4408ea08db225ba9343 GITHUB_OAUTH_APP_SECRET=863d041397eff27fbc774c6113f0b8d1fb85c4ae GITHUB_OAUTH_APP_REDIRECT_URL=${APP_URL}/login/github/callback FACEBOOK_OAUTH_APP_ID=176123903218771 FACEBOOK_OAUTH_APP_SECRET=fb4c3faec54d15b0c985e289c64ed0c9 FACEBOOK_OAUTH_APP_REDIRECT_URL=${APP_URL}/login/facebook/callback TWITTER_OAUTH_APP_ID=9y5Phx8rJMA4adGpFlwUz4Sig TWITTER_OAUTH_APP_SECRET=B8aBjH1gJjgoOnbiclnFqmb1WgG1li834adIfQ4ptLc8eqoIzt TWITTER_OAUTH_APP_REDIRECT_URL=${APP_URL}/login/twitter/callback
vendorソース改修¶
[root]# vi vendor/yajra/laravel-datatables-html/src/Html/Builder.php protected function makeDataScript(array $data) { $script = ''; foreach ($data as $key => $value) { -- $script .= PHP_EOL . "data.{$key} = '{$value}';"; ++ if(is_array($value)) { ++ for($i = 0; $i < count($value); $i++) { ++ $script .= PHP_EOL . "data.{$key}{$i} = '{$value[$i]}';"; ++ } ++ } else { ++ $script .= PHP_EOL . "data.{$key} = '{$value}';"; ++ } } return $script; }
DB作成¶
[root]# mysql -u root -p mysql> create database haloo_navi_shindan;
マイグレーション初期化&seed生成¶
[admin]$ php artisan migrate --seed
テストデータ生成¶
[admin]$ php artisan db:seed --class UserPersonalityTableSeeder
レポート集計バッチ手動実行¶
[admin]$ php artisan command:user_personality_report
ログイン情報¶
■ユーザー画面
http://shindan.haloonavi.com/
ID: test@test.com
PASS: testtest
■管理画面
http://shindan.haloonavi.com/admin/
AdminID: admin@shindan.haloonavi.com
PASS: testtest
スタッフID: staff@shindan.haloonavi.com
PASS: testtest