13
15

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Amazon Linux AMIでPHPを5.3から5.4にアップグレードする方法 with FuelPHP

Last updated at Posted at 2015-01-24

手順(インストール周り)

  • バックアップを取っておく

mv /etc/httpd/conf/httpd.conf{,.bk}
mv etc/php.ini{,.bk}


* rootに変更

    ```
su
  • 既存のphpとhttpdの削除

yum remove php-* httpd-*


* ApachとPHPをインストールする(※Amazon Linuxでは、PHP5.4とApache2.4はセットで使わないといけない)

    ```
yum install httpd24 php54
  • PHP extensionsをインストール(※必要に応じて、各自必要なエクステンションを導入すること)

yum install php54-mysql php54-pdo php54-pecl-memcached php54-mbstring php54-pecl-apc


    ※導入できるパッケージは下記で確認可能

    ```
yum list | grep php
※php-develパッケージをインストールしたい場合、`php54-devel`と指定すること。AWS Linuxでは`php-devel`はPHP5.3に紐付けられているようである。
  • 動作確認

php -v


* 自動起動設定

    ```
chkconfig httpd on
  • 起動

service httpd restart


## 手順(FuelPHP周り)

* httpd.confの編集

    ```/etc/httpd/conf/httpd.conf
<Directory /var/www/html/fuelphpAPP>
  AllowOverride all
</Directory>
これで、.htaccessファイルでの設定のオーバーライドが可能になる。
これを行わないと、自分で`httpd.conf`を設定しない限り、URLに`index.php`を含めないとアクセスできなくなってしまう。
  • php.iniの設定。下記を行う。

[browscap]
;http://php.net/browscap
;browscap = extra/browscap.ini
browscap = /etc/php.d/lite_php_browscap.ini


    上記を行わないと、phpのログに下記のようなエラーが生じる

    ```
/fuel/core/classes/agent.php on line 524
PHP Fatal error:  Allowed memory size of 134217728 bytes exhausted (tried to allocate 83 bytes) in APP/fuel/core/classes/agent.php on line 524

その他

  • もとのhttpd.confからVirtualHostの設定部分をコピーしてくる際に下記の部分は削除すること

    /etc/php.ini

NameVirtualHost *:80


    Apache2.4から、このディレクティブは意味なくなったようです。
    ( http://httpd.apache.org/docs/2.4/upgrading.html )
13
15
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
13
15

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?