「PHP5.6をインストールする」の版間の差分
提供: FreeBSD入門
(ページの作成:「FreeBSD に PHP 5.6 に Apache 用の libphp5.so と php コマンドをインストールします。 __TOC__ == 概要 == Apache 用もlibphp5.so は、 mod_php...」) |
|||
(同じ利用者による、間の3版が非表示) | |||
行1: | 行1: | ||
− | FreeBSD に [[PHP]] 5.6 に Apache 用の libphp5.so と php | + | FreeBSD に [[PHP]] 5.6 に Apache 用の libphp5.so と php コマンドをインストールします。phpdbgを利用する場合には、[[ports]]でビルドします。 |
__TOC__ | __TOC__ | ||
行9: | 行9: | ||
<syntaxhighlight lang="bash"> | <syntaxhighlight lang="bash"> | ||
$ sudo pkg install php56 php56-extensions mod_php56 | $ sudo pkg install php56 php56-extensions mod_php56 | ||
+ | </syntaxhighlight> | ||
+ | |||
+ | == PHP 5.6 のビルドオプション == | ||
+ | phpdbg は、オフになっています。 | ||
+ | <syntaxhighlight lang="bash"> | ||
+ | $ pkg info -f php56 | ||
+ | php56-5.6.0 | ||
+ | Name : php56 | ||
+ | Version : 5.6.0 | ||
+ | Installed on : Tue Sep 16 23:17:12 JST 2014 | ||
+ | Origin : lang/php56 | ||
+ | Architecture : freebsd:10:x86:64 | ||
+ | Prefix : /usr/local | ||
+ | Categories : www lang devel | ||
+ | Licenses : PHP301 | ||
+ | Maintainer : ale@FreeBSD.org | ||
+ | WWW : http://www.php.net/ | ||
+ | Comment : PHP Scripting Language | ||
+ | Options : | ||
+ | CGI : on | ||
+ | CLI : on | ||
+ | DEBUG : off | ||
+ | DTRACE : off | ||
+ | EMBED : off | ||
+ | FPM : on | ||
+ | FPM_IPV6 : off | ||
+ | IPV6 : on | ||
+ | LINKTHR : on | ||
+ | MAILHEAD : off | ||
+ | PHPDBG : off | ||
+ | ZTS : off | ||
+ | Shared Libs required: | ||
+ | libxml2.so.2 | ||
+ | libpcre.so.3 | ||
+ | Annotations : | ||
+ | cpe : cpe:2.3:a:php:php:5.6.0:::::freebsd10:x64 | ||
+ | repo_type : binary | ||
+ | repository : FreeBSD | ||
+ | Flat size : 14.9MiB | ||
+ | Description : | ||
+ | PHP, which stands for "PHP: Hypertext Preprocessor" is a widely-used Open | ||
+ | Source general-purpose scripting language that is especially suited for | ||
+ | Web development and can be embedded into HTML. Its syntax draws upon C, | ||
+ | Java, and Perl, and is easy to learn. The main goal of the language is to | ||
+ | allow web developers to write dynamically generated webpages quickly, but | ||
+ | you can do much more with PHP. | ||
+ | |||
+ | WWW: http://www.php.net/ | ||
</syntaxhighlight> | </syntaxhighlight> | ||
== PHP 5.5 から PHP 5.6 へアップグレードする方法 == | == PHP 5.5 から PHP 5.6 へアップグレードする方法 == | ||
− | PHP 5.5 が入ってる環境であれば、以下の方法でインストールします。 | + | PHP 5.6 と PHP 5.5 は、別パッケージですので、PHP 5.5 が入ってる環境であれば、以下の方法でインストールします。 |
一度、php55系のパッケージを削除します。 | 一度、php55系のパッケージを削除します。 | ||
<syntaxhighlight lang="bash"> | <syntaxhighlight lang="bash"> | ||
行19: | 行67: | ||
$ sudo pkg install `sed -e 's/-5.5.*$//' -e 's/php55/php56/' \ | $ sudo pkg install `sed -e 's/-5.5.*$//' -e 's/php55/php56/' \ | ||
-e 's/extensions.*/extensions/' /tmp/php.txt ` | -e 's/extensions.*/extensions/' /tmp/php.txt ` | ||
+ | </syntaxhighlight> | ||
+ | |||
+ | === sqlite3 でエラーがおきる場合 === | ||
+ | sqlite3.so が libsqlite3.so.0 がありません、とエラーが出ている場合は、sqlite3 のパッケージをアップデートします。 | ||
+ | <syntaxhighlight lang="bash"> | ||
+ | $ php | ||
+ | PHP Warning: PHP Startup: Unable to load dynamic library | ||
+ | '/usr/local/lib/php/20131226/sqlite3.so' - Shared object "libsqlite3.so.0" not | ||
+ | found, required by "sqlite3.so" in Unknown on line 0 | ||
+ | PHP Warning: PHP Startup: Unable to load dynamic library | ||
+ | '/usr/local/lib/php/20131226/pdo_sqlite.so' - Shared object "libsqlite3.so.0" | ||
+ | not found, required by "pdo_sqlite.so" in Unknown on line 0 | ||
+ | </syntaxhighlight> | ||
+ | |||
+ | このようにアップデートします。 | ||
+ | <syntaxhighlight lang="bash"> | ||
+ | $ sudo pkg install sqlite3 | ||
+ | Updating FreeBSD repository catalogue... | ||
+ | FreeBSD repository is up-to-date. | ||
+ | All repositories are up-to-date. | ||
+ | The following 1 packages will be affected (of 0 checked): | ||
+ | |||
+ | Installed packages to be UPGRADED: | ||
+ | sqlite3: 3.8.4.2 -> 3.8.6 | ||
+ | |||
+ | The process will require 59 KB more space. | ||
+ | 664 KB to be downloaded. | ||
+ | |||
+ | Proceed with this action? [y/N]: y | ||
+ | Fetching sqlite3-3.8.6.txz: 100% 664 KB 136.0k/s 00:05 | ||
+ | Checking integrity... done (0 conflicting) | ||
+ | [1/1] Upgrading sqlite3 from 3.8.4.2 to 3.8.6: 100% | ||
+ | </syntaxhighlight> | ||
+ | |||
+ | == pear のアップデート == | ||
+ | pear 系のパッケージをアップデートする場合は、このような形でアップデートできます。 | ||
+ | <syntaxhighlight lang="bash"> | ||
+ | $ sudo pkg install `pkg info '*pear*' | perl -ne 's/-[\d].*$//;print;'` | ||
</syntaxhighlight> | </syntaxhighlight> | ||
行87: | 行173: | ||
<syntaxhighlight lang="bash"> | <syntaxhighlight lang="bash"> | ||
$ php -S 0 0.0.0:8080 | $ php -S 0 0.0.0:8080 | ||
+ | </syntaxhighlight> | ||
+ | |||
+ | == phpdbg が使いたい場合 == | ||
+ | pkpdbgが使用したい場合には、php56 を自分でビルドする必要があります。 | ||
+ | |||
+ | make config で PHPDBG にチェックを入れて、ビルドします。 | ||
+ | <syntaxhighlight lang="bash"> | ||
+ | $ cd /usr/ports/lang/php56 | ||
+ | $ sudo make config | ||
+ | $ sudo make install clean | ||
</syntaxhighlight> | </syntaxhighlight> | ||
2014年9月20日 (土) 13:04時点における最新版
FreeBSD に PHP 5.6 に Apache 用の libphp5.so と php コマンドをインストールします。phpdbgを利用する場合には、portsでビルドします。
目次
概要
Apache 用もlibphp5.so は、 mod_php56をインストールします。
インストール
$ sudo pkg install php56 php56-extensions mod_php56
PHP 5.6 のビルドオプション
phpdbg は、オフになっています。
$ pkg info -f php56 php56-5.6.0 Name : php56 Version : 5.6.0 Installed on : Tue Sep 16 23:17:12 JST 2014 Origin : lang/php56 Architecture : freebsd:10:x86:64 Prefix : /usr/local Categories : www lang devel Licenses : PHP301 Maintainer : ale@FreeBSD.org WWW : http://www.php.net/ Comment : PHP Scripting Language Options : CGI : on CLI : on DEBUG : off DTRACE : off EMBED : off FPM : on FPM_IPV6 : off IPV6 : on LINKTHR : on MAILHEAD : off PHPDBG : off ZTS : off Shared Libs required: libxml2.so.2 libpcre.so.3 Annotations : cpe : cpe:2.3:a:php:php:5.6.0:::::freebsd10:x64 repo_type : binary repository : FreeBSD Flat size : 14.9MiB Description : PHP, which stands for "PHP: Hypertext Preprocessor" is a widely-used Open Source general-purpose scripting language that is especially suited for Web development and can be embedded into HTML. Its syntax draws upon C, Java, and Perl, and is easy to learn. The main goal of the language is to allow web developers to write dynamically generated webpages quickly, but you can do much more with PHP. WWW: http://www.php.net/
PHP 5.5 から PHP 5.6 へアップグレードする方法
PHP 5.6 と PHP 5.5 は、別パッケージですので、PHP 5.5 が入ってる環境であれば、以下の方法でインストールします。 一度、php55系のパッケージを削除します。
$ pkg info | fgrep php55 >/tmp/php.txt $ sudo pkg remove '*php55*' $ sudo pkg install `sed -e 's/-5.5.*$//' -e 's/php55/php56/' \ -e 's/extensions.*/extensions/' /tmp/php.txt `
sqlite3 でエラーがおきる場合
sqlite3.so が libsqlite3.so.0 がありません、とエラーが出ている場合は、sqlite3 のパッケージをアップデートします。
$ php PHP Warning: PHP Startup: Unable to load dynamic library '/usr/local/lib/php/20131226/sqlite3.so' - Shared object "libsqlite3.so.0" not found, required by "sqlite3.so" in Unknown on line 0 PHP Warning: PHP Startup: Unable to load dynamic library '/usr/local/lib/php/20131226/pdo_sqlite.so' - Shared object "libsqlite3.so.0" not found, required by "pdo_sqlite.so" in Unknown on line 0
このようにアップデートします。
$ sudo pkg install sqlite3 Updating FreeBSD repository catalogue... FreeBSD repository is up-to-date. All repositories are up-to-date. The following 1 packages will be affected (of 0 checked): Installed packages to be UPGRADED: sqlite3: 3.8.4.2 -> 3.8.6 The process will require 59 KB more space. 664 KB to be downloaded. Proceed with this action? [y/N]: y Fetching sqlite3-3.8.6.txz: 100% 664 KB 136.0k/s 00:05 Checking integrity... done (0 conflicting) [1/1] Upgrading sqlite3 from 3.8.4.2 to 3.8.6: 100%
pear のアップデート
pear 系のパッケージをアップデートする場合は、このような形でアップデートできます。
$ sudo pkg install `pkg info '*pear*' | perl -ne 's/-[\d].*$//;print;'`
設定
PHP
/usr/local/etc/php.ini-development /usr/local/etc/php.ini-production
Apache
LoadModule php5_module libexec/apache24/libphp5.so
使い方
バージョン
$ php -v PHP 5.6.0 (cli) (built: Sep 10 2014 06:12:49) Copyright (c) 1997-2014 The PHP Group Zend Engine v2.6.0, Copyright (c) 1998-2014 Zend Technologies with Zend OPcache v7.0.4-dev, Copyright (c) 1999-2014, by Zend Technologies
コマンドラインオプション
Usage: php [options] [-f] <file> [--] [args...] php [options] -r <code> [--] [args...] php [options] [-B <begin_code>] -R <code> [-E <end_code>] [--] [args...] php [options] [-B <begin_code>] -F <file> [-E <end_code>] [--] [args...] php [options] -S <addr>:<port> [-t docroot] php [options] -- [args...] php [options] -a -a Run interactively -c <path>|<file> Look for php.ini file in this directory -n No php.ini file will be used -d foo[=bar] Define INI entry foo with value 'bar' -e Generate extended information for debugger/profiler -f <file> Parse and execute <file>. -h This help -i PHP information -l Syntax check only (lint) -m Show compiled in modules -r <code> Run PHP <code> without using script tags <?..?> -B <begin_code> Run PHP <begin_code> before processing input lines -R <code> Run PHP <code> for every input line -F <file> Parse and execute <file> for every input line -E <end_code> Run PHP <end_code> after processing all input lines -H Hide any passed arguments from external tools. -S <addr>:<port> Run with built-in web server. -t <docroot> Specify document root <docroot> for built-in web server. -s Output HTML syntax highlighted source. -v Version number -w Output source with stripped comments and whitespace. -z <file> Load Zend extension <file>. args... Arguments passed to script. Use -- args when first argument starts with - or script is read from stdin --ini Show configuration file names --rf <name> Show information about function <name>. --rc <name> Show information about class <name>. --re <name> Show information about extension <name>. --rz <name> Show information about Zend extension <name>. --ri <name> Show configuration for extension <name>.
PHPサーバ
PHPサーバを起動する方法です。
$ php -S 0 0.0.0:8080
phpdbg が使いたい場合
pkpdbgが使用したい場合には、php56 を自分でビルドする必要があります。
make config で PHPDBG にチェックを入れて、ビルドします。
$ cd /usr/ports/lang/php56 $ sudo make config $ sudo make install clean
関連項目
- PHP
- PHP5.5をインストールする
- PHP5.6をインストールする
- Apache 2.4でlibphp5.soを使用する方法