質問編集履歴

2 タグの追加

x_kai

x_kai score 54

2017/02/10 11:53  投稿

CentOS6.6で複数のPHPのバージョンを共存させたい
###前提・実現したいこと
前に他の人が使用していたサーバーに、過去にyumで入れたPHP5.4.32を残したまま、
最新のPHPをインストールしたいと思っています。
そこで、ネットで調べて以下の2つの方法を実行してみました。
1. phpenv + php-buildを使用する方法
2. Remiリポジトリを使用してyumからインストールする方法
しかし、どちらの方法も上手く行きませんでした。
この2つの方法で発生した問題の解決策、またはこれら以外の別の方法をご教示いただけないでしょうか。
###発生している問題・エラーメッセージ
**phpenv + php-buildを使用する方法**
参考にしたサイト:[http://www.aiship.jp/knowhow/archives/25452](http://www.aiship.jp/knowhow/archives/25452)
この方法を試したところ、phpenv及びphp-buildの導入には成功したのですが、
いざPHPをインストールしようとすると以下のビルドエラーが発生します
```
[Info]: Loaded extension plugin
[Info]: Loaded apc Plugin.
[Info]: Loaded composer Plugin.
[Info]: Loaded github Plugin.
[Info]: Loaded uprofiler Plugin.
[Info]: Loaded xdebug Plugin.
[Info]: Loaded xhprof Plugin.
[Info]: Loaded zendopcache Plugin.
[Info]: php.ini-production gets used as php.ini
[Info]: Building 7.1.1 into /root/.phpenv/versions/7.1.1
[Downloading]: https://secure.php.net/distributions/php-7.1.1.tar.bz2
-----------------
| BUILD ERROR |
-----------------
Here are the last 10 lines from the log:
-----------------------------------------
curl: (7) Failed to connect to 2a02:cb41::7: ネットワークに届きません
-----------------------------------------
The full Log is available at '/tmp/php-build.7.1.1.20170208100829.log'.
[Warn]: Aborting build.
```
**Remiリポジトリを使用してyumからインストールする方法**
参考にしたサイト:[http://qiita.com/bezeklik/items/860ba080bf4c664cd8e9](http://qiita.com/bezeklik/items/860ba080bf4c664cd8e9)
こちらは、最新のPHP(PHP71)のインストールは上手くいって、
「php -v」で最新バージョン(PHP7.1.1)になっていることを確認したのですが、
/var/www/html/phpinfo.phpを作成して、ブラウザで表示してみると、
元々入っていたバージョン(PHP5.4.32)が表示されます。
###試したこと
**phpenv + php-buildを使用する方法**
curlのプロキシの設定の問題と考え、以下のように、curlrcを作成し、プロキシの設定をしました。
しかし、エラーの内容は変わりませんでした。
```
vi ~/.curlrc
proxy = "http://プロキシサーバーのIPアドレス:ポート番号"
```
**Remiリポジトリを使用してyumからインストールする方法**
ネットで調べて、libphp7.so、libphp7-zts.soがないとダメなことが分かったのですが、
/usr/lib64/httpd/modules/の中にlibphp7.so、libphp7-zts.soが生成されておらず、
findで探してみましたがどこにも存在していませんでした。
PHP71を一度消して再インストールしてみましたが生成されませんでした。
###補足情報
作業の方ですが、Tera Termを使用して作業を行っています。
OSとApacheのバージョン
- OS…CentOS6.6
- Apache…Apache2.2.15
###追記(2017/02/09)
調べていると、ソースからインストールからでも共存できる?とのことでしたので、
wgetでソースからインストールしてみました。
以下のサイトを参考にしました。
[CentOS6にPHP7をソースからインストール](http://qiita.com/d-dai/items/200e8b0540364c47adde)
上記ページの「必要なパッケージをインストール」から「PHPをインストール」までを行いました。
(今のところphp.iniは変わっていません。5.4.32のときのままです。)
結果として、「php -v」コマンドで表示されるバージョン、
及びphpinfo.phpでブラウザに表示されるバージョンともに「7.1.1」になりました。
ただ、元々入っていたPHP5.4.32が残っているのかが分かりません。
元々のPHPが残っているのかどうか、何か確認する術などはあるのでしょうか。
(※上記の質問を、別の質問として新しく投稿した方がいい場合はそのようにいたします。)
ちなみに、httpd.conf内を、以下のように「libphp5.so」を読むように書き換えてみましたところ、
```
LoadModule php5_module modules/libphp5.so
# LoadModule php7_module /usr/lib64/httpd/modules/libphp7.so
```
「php -v」では「7.1.1」と表示されますが、phpinfo.phpでは「5.4.32」と表示されました。
  • PHP

    28536 questions

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

  • Apache

    2419 questions

    Apacheは、Apache HTTP Serverの略で、最も人気の高いWebサーバソフトウェアの一つです。安定性が高いオープンソースソフトウェアとして商用サイトから自宅サーバまで、多くのプラットフォーム向けに開発・配布されています。サーバーソフトウェアの不具合(NCSA httpd)を修正するパッチ(a patch)を集積、一つ独立したソフトウェアとして開発されました。

  • CentOS

    3726 questions

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

  • Linux

    5335 questions

    Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

1 質問の追記

x_kai

x_kai score 54

2017/02/09 17:21  投稿

CentOS6.6で複数のPHPのバージョンを共存させたい
###前提・実現したいこと
前に他の人が使用していたサーバーに、過去にyumで入れたPHP5.4.32を残したまま、
最新のPHPをインストールしたいと思っています。
そこで、ネットで調べて以下の2つの方法を実行してみました。
1. phpenv + php-buildを使用する方法
2. Remiリポジトリを使用してyumからインストールする方法
しかし、どちらの方法も上手く行きませんでした。
この2つの方法で発生した問題の解決策、またはこれら以外の別の方法をご教示いただけないでしょうか。
###発生している問題・エラーメッセージ
**phpenv + php-buildを使用する方法**
参考にしたサイト:[http://www.aiship.jp/knowhow/archives/25452](http://www.aiship.jp/knowhow/archives/25452)
この方法を試したところ、phpenv及びphp-buildの導入には成功したのですが、
いざPHPをインストールしようとすると以下のビルドエラーが発生します
```
[Info]: Loaded extension plugin
[Info]: Loaded apc Plugin.
[Info]: Loaded composer Plugin.
[Info]: Loaded github Plugin.
[Info]: Loaded uprofiler Plugin.
[Info]: Loaded xdebug Plugin.
[Info]: Loaded xhprof Plugin.
[Info]: Loaded zendopcache Plugin.
[Info]: php.ini-production gets used as php.ini
[Info]: Building 7.1.1 into /root/.phpenv/versions/7.1.1
[Downloading]: https://secure.php.net/distributions/php-7.1.1.tar.bz2
-----------------
| BUILD ERROR |
-----------------
Here are the last 10 lines from the log:
-----------------------------------------
curl: (7) Failed to connect to 2a02:cb41::7: ネットワークに届きません
-----------------------------------------
The full Log is available at '/tmp/php-build.7.1.1.20170208100829.log'.
[Warn]: Aborting build.
```
**Remiリポジトリを使用してyumからインストールする方法**
参考にしたサイト:[http://qiita.com/bezeklik/items/860ba080bf4c664cd8e9](http://qiita.com/bezeklik/items/860ba080bf4c664cd8e9)
こちらは、最新のPHP(PHP71)のインストールは上手くいって、
「php -v」で最新バージョン(PHP7.1.1)になっていることを確認したのですが、
/var/www/html/phpinfo.phpを作成して、ブラウザで表示してみると、
元々入っていたバージョン(PHP5.4.32)が表示されます。
###試したこと
**phpenv + php-buildを使用する方法**
curlのプロキシの設定の問題と考え、以下のように、curlrcを作成し、プロキシの設定をしました。
しかし、エラーの内容は変わりませんでした。
```
vi ~/.curlrc
proxy = "http://プロキシサーバーのIPアドレス:ポート番号"
```
**Remiリポジトリを使用してyumからインストールする方法**
ネットで調べて、libphp7.so、libphp7-zts.soがないとダメなことが分かったのですが、
/usr/lib64/httpd/modules/の中にlibphp7.so、libphp7-zts.soが生成されておらず、
findで探してみましたがどこにも存在していませんでした。
PHP71を一度消して再インストールしてみましたが生成されませんでした。
###補足情報
作業の方ですが、Tera Termを使用して作業を行っています。
OSとApacheのバージョン
- OS…CentOS6.6
- Apache…Apache2.2.15
- Apache…Apache2.2.15
###追記(2017/02/09)
調べていると、ソースからインストールからでも共存できる?とのことでしたので、
wgetでソースからインストールしてみました。
以下のサイトを参考にしました。
[CentOS6にPHP7をソースからインストール](http://qiita.com/d-dai/items/200e8b0540364c47adde)
上記ページの「必要なパッケージをインストール」から「PHPをインストール」までを行いました。
(今のところphp.iniは変わっていません。5.4.32のときのままです。)
結果として、「php -v」コマンドで表示されるバージョン、
及びphpinfo.phpでブラウザに表示されるバージョンともに「7.1.1」になりました。
ただ、元々入っていたPHP5.4.32が残っているのかが分かりません。
元々のPHPが残っているのかどうか、何か確認する術などはあるのでしょうか。
(※上記の質問を、別の質問として新しく投稿した方がいい場合はそのようにいたします。)
ちなみに、httpd.conf内を、以下のように「libphp5.so」を読むように書き換えてみましたところ、
```
LoadModule php5_module modules/libphp5.so
# LoadModule php7_module       /usr/lib64/httpd/modules/libphp7.so
```
「php -v」では「7.1.1」と表示されますが、phpinfo.phpでは「5.4.32」と表示されました。
  • PHP

    28536 questions

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

  • Apache

    2419 questions

    Apacheは、Apache HTTP Serverの略で、最も人気の高いWebサーバソフトウェアの一つです。安定性が高いオープンソースソフトウェアとして商用サイトから自宅サーバまで、多くのプラットフォーム向けに開発・配布されています。サーバーソフトウェアの不具合(NCSA httpd)を修正するパッチ(a patch)を集積、一つ独立したソフトウェアとして開発されました。

  • CentOS

    3726 questions

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

思考するエンジニアのためのQ&Aサイト「teratail」について詳しく知る