Xserver で composer require google/analytics-data を使用する
Xserver のSSHで 下記を実行するとエラーが出たので
対処したことの備忘録です。
1 |
composer require google/analytics-data |
目次
Xserver に google/analytics-data のインストール準備
① XserverでSSH接続できるようにする
今までFTPしか使っていなかったので
まずはSSH接続できるようにしました。
サーバーパネルから設定が出来ます。
アカウント > SSH設定
右上の「関連マニュアル」を参照して設定を行いました。
設定完了後、ターミナルからコマンドでSSH接続します。
1 |
ssh -p 10022 アカウント@ドメイン -i 秘密鍵のパス |
② Composer のバージョンを上げる
エラー内容
composer require google/analytics-data を実行するに当たって
まずは以下のエラーが出ました。
1 2 3 4 |
Warning from https://repo.packagist.org: Support for Composer 1 is deprecated and some packages will not be available. You should upgrade to Composer 2. See https://blog.packagist.com/deprecating-composer-1-support/ Info from https://repo.packagist.org: #StandWithUkraine (他にも色々.......) |
Xserver に入っている Composer のバージョンが古いようです。
1 2 |
composer --version Composer version 1.9.1 2019-11-01 17:20:17 |
2系にする必要があるらしい
Xserver の composer アップデート
こちら参考にアップデートしました🙏
1 2 |
composer -V Composer version 2.2.21 2023-02-15 13:07:40 |
最新バージョンになりました。
※ 自分用メモ:現在のホームディレクトリ(binが追加された)
1 2 |
ls Maildir Maildir.1 Maildir.2 Maildir.3 bin 初期ドメイン homemadegarbage.com ssl |
1 2 3 4 |
ls -A .bash_history .cache .pki .ssh Maildir.2 初期ドメイン .bash_profile .config .python_history Maildir Maildir.3 homemadegarbage.com .bashrc .local .spamassassin Maildir.1 bin ssl |
③ php のバージョンを上げる
エラー内容
再び composer require google/analytics-data を実行するとまだエラー。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
Info from https://repo.packagist.org: #StandWithUkraine Using version ^0.9.4 for google/analytics-data ./composer.json has been created Running composer update google/analytics-data Loading composer repositories with package information Updating dependencies Your requirements could not be resolved to an installable set of packages. Problem 1 - google/gax[1.6.0, ..., v1.12.2] require php >=5.5 -> your php version (5.4.16) does not satisfy that requirement. - google/gax[v1.13.0, ..., v1.15.0] require php >=5.6 -> your php version (5.4.16) does not satisfy that requirement. - google/gax[v1.16.0, ..., v1.19.1] require php >=7.0 -> your php version (5.4.16) does not satisfy that requirement. - google/gax[v1.20.0, ..., v1.20.2] require php >=7.4 -> your php version (5.4.16) does not satisfy that requirement. - google/analytics-data v0.9.5 require php >=7.4 -> your php version (5.4.16) does not satisfy that requirement. - google/analytics-data v0.9.4 requires google/gax ^1.6.0 -> satisfiable by google/gax[1.6.0, ..., v1.20.2]. - Root composer.json requires google/analytics-data ^0.9.4 -> satisfiable by google/analytics-data[v0.9.4, v0.9.5]. You can also try re-running composer require with an explicit version constraint, e.g. "composer require google/analytics-data:*" to figure out if any version is installable, or "composer require google/analytics-data:^2.1" if you know which you need. Installation failed, deleting ./composer.json. |
php バージョンが要件を満たしていないとの事。
1 2 |
php -v PHP 5.4.16 (cli) (built: Nov 1 2019 16:04:20) |
サーバーパネルでは現在7なのにコマンドから確認すると5なんだなぁ
Xserver の php バージョン変更
こちら参考に設定しました🙏
【エックスサーバー】SSHのPHPのバージョンを変更する方法 | STOCKCODE
$HOME/bin は①の時に作成済なので
フォルダ作成とパスを通す記述は省略しました。
1 2 3 |
php -v PHP 7.3.33 (cli) (built: Oct 12 2022 15:20:44) ( NTS ) Copyright (c) 1997-2018 The PHP Group |
無事アップデートされました。
※自分用メモ:bin には composer と php が入っている
1 2 |
ls bin composer php |
google/analytics-data のインストール
プロジェクト用ディレクトリ作成
最初よくわからずにホームディレクトリで composer require google/analytics-data を実行してしまいました。
インストールはエラー無く完了したものの
ホームディレクトリに下記のファイルが出来てしまい
サーバ側では使用出来ませんでした…。
- composer.lock
- composer.json
- vendor
公開サーバの中にプロジェクト用ディレクトリを作成する必要がありました。
composer はパッケージ管理ツールなのでnpmみたいなものかと…(?)
とりあえず適当にga4専用のフォルダを作成しました。
1 |
homemadegarbage.com/public_html/適当なディレクトリ |
(※ホームディレクトリに生成されてしまったファイルは削除しました。)
インストール完了
上記で作成したディレクトリに移動し
1 |
cd homemadegarbage.com/public_html/ディレクトリ |
再び下記を
1 |
composer require google/analytics-data |
実行…
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 |
Info from https://repo.packagist.org: #StandWithUkraine Using version ^0.9.4 for google/analytics-data ./composer.json has been created Running composer update google/analytics-data Loading composer repositories with package information Updating dependencies Lock file operations: 18 installs, 0 updates, 0 removals - Locking firebase/php-jwt (v6.4.0) - Locking google/analytics-data (v0.9.4) - Locking google/auth (v1.26.0) - Locking google/common-protos (v3.2.0) - Locking google/gax (v1.19.1) - Locking google/grpc-gcp (v0.2.1) - Locking google/longrunning (v0.2.6) - Locking google/protobuf (v3.23.2) - Locking grpc/grpc (1.52.0) - Locking guzzlehttp/guzzle (7.7.0) - Locking guzzlehttp/promises (1.5.3) - Locking guzzlehttp/psr7 (2.5.0) - Locking psr/cache (1.0.1) - Locking psr/http-client (1.0.2) - Locking psr/http-factory (1.0.2) - Locking psr/http-message (1.1) - Locking ralouphie/getallheaders (3.0.3) - Locking symfony/deprecation-contracts (v2.5.2) Writing lock file Installing dependencies from lock file (including require-dev) Package operations: 18 installs, 0 updates, 0 removals - Downloading firebase/php-jwt (v6.4.0) - Downloading ralouphie/getallheaders (3.0.3) - Downloading psr/http-message (1.1) - Downloading psr/http-factory (1.0.2) - Downloading guzzlehttp/psr7 (2.5.0) - Downloading guzzlehttp/promises (1.5.3) - Downloading grpc/grpc (1.52.0) - Downloading google/protobuf (v3.23.2) - Downloading google/longrunning (v0.2.6) - Downloading psr/cache (1.0.1) - Downloading symfony/deprecation-contracts (v2.5.2) - Downloading psr/http-client (1.0.2) - Downloading guzzlehttp/guzzle (7.7.0) - Downloading google/auth (v1.26.0) - Downloading google/grpc-gcp (v0.2.1) - Downloading google/common-protos (v3.2.0) - Downloading google/gax (v1.19.1) - Downloading google/analytics-data (v0.9.4) - Installing firebase/php-jwt (v6.4.0): Extracting archive - Installing ralouphie/getallheaders (3.0.3): Extracting archive - Installing psr/http-message (1.1): Extracting archive - Installing psr/http-factory (1.0.2): Extracting archive - Installing guzzlehttp/psr7 (2.5.0): Extracting archive - Installing guzzlehttp/promises (1.5.3): Extracting archive - Installing grpc/grpc (1.52.0): Extracting archive - Installing google/protobuf (v3.23.2): Extracting archive - Installing google/longrunning (v0.2.6): Extracting archive - Installing psr/cache (1.0.1): Extracting archive - Installing symfony/deprecation-contracts (v2.5.2): Extracting archive - Installing psr/http-client (1.0.2): Extracting archive - Installing guzzlehttp/guzzle (7.7.0): Extracting archive - Installing google/auth (v1.26.0): Extracting archive - Installing google/grpc-gcp (v0.2.1): Extracting archive - Installing google/common-protos (v3.2.0): Extracting archive - Installing google/gax (v1.19.1): Extracting archive - Installing google/analytics-data (v0.9.4): Extracting archive 8 package suggestions were added by new dependencies, use `composer suggest` to see details. Generating autoload files 4 packages you are using are looking for funding. Use the `composer fund` command to find out more! |
無事インストールされたようです。