質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
CentOS

CentOSは、主にRed Hat Enterprise Linux(RHEL)をベースにした、フリーのソフトウェアオペレーティングシステムです。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

Q&A

解決済

2回答

7323閲覧

remiリポジトリを導入しているのにupdatesリポジトリからインストールされてしまう

AY6M_

総合スコア14

CentOS

CentOSは、主にRed Hat Enterprise Linux(RHEL)をベースにした、フリーのソフトウェアオペレーティングシステムです。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

0グッド

1クリップ

投稿2016/07/18 14:25

編集2016/07/18 15:02

3時間くらいハマってどうにもならないので質問します...

phpを5.4から5.6にするためにyum remove php-*でphp5.4を消し、

最新版のepelとremiリポジトリを導入しました。

そして、
yum --enablerepo=remi,remi-php56 install php php-common

と打つも何故かupdatesリポジトリの5.4が優先されてしまい、php5.6がインストールできないという状況です。

###やったこと

とりあえず無効化してみる→ダメ
yum --disablerepo=updates --enablerepo=remi,remi-php56 install php php-common

Apacheから全部消していれなおす→ダメ

ほかにも細かいことを色々やったのですがダメでした

####導入リポジトリ
epel-release-7-6.noarch
remi-release-7.2-1.el7.remi.noarch

ちなみに、rpm -qa | grep remi を打つと
php56-php-cli-5.6.23-1.el7.remi.x86_64
php56-php-pecl-jsonc-1.3.10-1.el7.remi.x86_64
php56-php-process-5.6.23-1.el7.remi.x86_64
php56-php-common-5.6.23-1.el7.remi.x86_64
php56-php-xml-5.6.23-1.el7.remi.x86_64
php56-php-pecl-zip-1.13.3-1.el7.remi.x86_64
php56-php-pear-1.10.1-4.el7.remi.noarch
libzip-last-1.1.3-1.el7.remi.x86_64

と出てきますが(大慌てしてたのでうろ覚えですが、たしかrpmコマンドでぶち込んだような気がします)、php -v ではそのようなファイルやディレクトリはないといわれてしまいます。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

ベストアンサー

remi,remi-php56 リポジトリには php-*5.6.23-1.el7.remi (/usr/bin/php)と php56-php-*5.6.23-1.el7.remi (/opt/remi/php56/root/usr/bin/php)の 2種類存在します。

前者は yum --enablerepo=remi,remi-php56 install php php-common でインストールできるはずです。
remi,remi-php56 の repodata がダウンロードできていないのではないでしょうか。
/var/cache/yum/x86_64/7/remi/, /var/cache/yum/x86_64/7/remi-php56/ ディレクトリを確認ください。

後者の php56-php-* パッケージは、scl enable php56 bash で環境変数をセットした子シェルを起動するか、直接 source /opt/remi/php56/enable で環境変数をセットすると PATH が通ります。

参考: https://teratail.com/questions/6064

投稿2016/07/18 15:14

TaichiYanagiya

総合スコア12141

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

TaichiYanagiya

2016/07/18 15:17

priority プラグインが入っていますね。 /etc/yum.repos.d/*.repo ファイルに priority= を設定していませんでしょうか?
AY6M_

2016/07/18 15:45

priorityプラグイン、いつ入れたか...ごっちゃになっていたようです。 後者の方法でなんとかなったようです。 が、Apacheがphpを認識していない?感じですのでpriorityを設定後 明日またApacheの設定からやりなおしてみます。ありがとうございました。
guest

0

bash

1yum --enablerepo=remi,remi-php56 install php56 php56-common

投稿2016/07/18 14:32

退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

AY6M_

2016/07/18 14:52

同じようなことを試しましたが、 パッケージ php56-common は利用できません。 というエラーが出てしまいます。 無視してインストールを続行し、php56.x86_64 0:2.1-5.el7.remiのみインストールしても、コマンド等が使えませんでした。 http://weblabo.oscasierra.net/centos7-php56-install/ Apacheごと入れなおしたときは上記のサイトを参考にやってみたのですが、やはりupdatesリポジトリの5.4.16-36が優先されてしまいます。
退会済みユーザー

退会済みユーザー

2016/07/18 14:54

どうも正確な情報を伝えてくれている気がしませんので、実行時のショットを貼り付けてください。
退会済みユーザー

退会済みユーザー

2016/07/18 15:10

実行コマンドが提示したものではありません。
退会済みユーザー

退会済みユーザー

2016/07/18 15:13 編集

それに php -v で結果がおかしいのはパスが通っていないだけでインストールされていないわけではない。(←結局のところ、これまでの質問で正しい情報を伝えていない)
AY6M_

2016/07/18 15:51

すいません、解決しました。priorityプラグインが原因だったようです。
退会済みユーザー

退会済みユーザー

2016/07/18 15:51

原因はそこじゃないよ
退会済みユーザー

退会済みユーザー

2016/07/18 15:52

あなたが実行したのは yum --enablerepo=remi,remi-php56 install php php-common 私が提示したのは yum --enablerepo=remi,remi-php56 install php56 php56-common
AY6M_

2016/07/18 16:03

1枚目の方は提示された方で実行しています。
退会済みユーザー

退会済みユーザー

2016/07/18 16:06

それは、php56-common を指定していません。だから php -v で結果が返ってこない
AY6M_

2016/07/18 16:19

いまいち意味がよくわかりません。 提示して戴いたコマンドをそのまま実行して、php56-commonは利用できませんと返されています。
退会済みユーザー

退会済みユーザー

2016/07/18 16:22

パッケージ名 php56-php-common でしたね rpm -qa | grep remi の結果、ご自身で調べて その結果、 php56-php-cli-5.6.23-1.el7.remi.x86_64 php56-php-pecl-jsonc-1.3.10-1.el7.remi.x86_64 php56-php-process-5.6.23-1.el7.remi.x86_64 php56-php-common-5.6.23-1.el7.remi.x86_64 php56-php-xml-5.6.23-1.el7.remi.x86_64 php56-php-pecl-zip-1.13.3-1.el7.remi.x86_64 php56-php-pear-1.10.1-4.el7.remi.noarch libzip-last-1.1.3-1.el7.remi.x86_64 と帰ってきているのだから、表示されたパッケージ名を指定しましょうって話です。
kaz.Suenaga

2016/07/18 16:25

おじゃまします。 yum --enablerepo=remi,remi-php56 install php56 php56-common と yum --enablerepo=remi,remi-php56 install php php-common は、実行結果が一致しません。 インストールパスやファイル名が異なってインストールされます。 質問者さんがお望みの通常のPHPの置き換えとしての php56 の場合、質問者さんがされている php php-common のインストールが適切です。 インストールパスを /opt 以下にして多バージョンのPHPを共存させる場合などは php56 php56-common が適切です。
退会済みユーザー

退会済みユーザー

2016/07/18 16:33 編集

@kaz.Suenaga さん ちょっと質問させてください。 自分の環境、CentOS 6.8 remi-php70 でインストールしています。 # which php で確認したところ、 /usr/bin/php なりますが、php56 レポジトリの場合、そうはならないということでしょうか? あと、質問者さん、yum remove php を行っているので、単純にバージョンアップを目的にしていると解釈しているのですが…
kaz.Suenaga

2016/07/18 16:38 編集

Kosuke_Shibuyaさんがおっしゃっている状況が出来上がるのは、remi-php70 を有効にした状態で yum install php (php70 でなく)をした場合ですね。 remi-php70 から php が標準パッケージと同様のパスにインストールされます。 詳細は TaichiYanagiyaさんの回答の方にあるのがわかりやすいかと思いますが、パッケージが2つある、ということですね。
退会済みユーザー

退会済みユーザー

2016/07/18 16:43

@kaz.Suenaga さん なるほどです。インストール時にどう実行したか、記憶が定かではありませんが、 ちなみに # yum list installed | grep php を実行したところ、 php.x86_64 7.0.8-1.el6.remi @remi-php70 php-PHPMailer.noarch 5.2.16-1.el6.remi @remi php-Smarty.noarch 3.1.29-1.el6.remi @remi php-bcmath.x86_64 7.0.8-1.el6.remi @remi-php70 php-cli.x86_64 7.0.8-1.el6.remi @remi-php70 php-common.x86_64 7.0.8-1.el6.remi @remi-php70 php-gd.x86_64 7.0.8-1.el6.remi @remi-php70 … となりますが、 php70-* でインストールしていたら、php70-* のように表示されるのでしょうか?
kaz.Suenaga

2016/07/18 16:45

試せる環境が今手元にないので確かではないですが、そうなったはずです。 パス等が異なってしまっていろいろややこしくなるので、php70 でインストールした場合はすぐわかるはずです^^;
退会済みユーザー

退会済みユーザー

2016/07/18 16:49

@kaz.Suenaga さん ありがとうございます。異なるバージョンをインストールすること自体が、レアケースでしょうし、実際にそのような環境を作ることは今後も起こらないとは思いますが…ひとつ賢くなりました。ありがとうございます。
AY6M_

2016/07/20 05:13

別の業務処理が重なったため、遅れました。 結果的な報告ですが、remi側のpriorityを設定したところすんなりいってしまいました...。 Kosuke_Shibuyaさん、kaz.Suenagaさん、ありがとうございました。 今度CentOSをいじる機会が多くなるので、パッケージの事含め覚えておきます。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問