Lighttpdは、速度が重要な環境向けに設計された、安全で高速な標準準拠のWebサーバーです。このチュートリアルでは、PHPをサポートするUbuntu 15.10サーバー(PHP-FPMを介して)とMySQLまたはMariaDBにLighttpdをインストールする方法を示します。 PHP-FPM(FastCGI Process Manager)は、あらゆるサイズのサイト、特に忙しいサイトに役立ついくつかの追加機能を備えた、代替のPHPFastCGI実装です。このチュートリアルでは、Lighttpdのspawn-fcgiの代わりにPHP-FPMを使用しています。
1予備メモ
このチュートリアルでは、ホスト名server1.example.comとIPアドレス192.168.1.100を使用します。これらの設定はユーザーによって異なる場合があるため、必要に応じて置き換える必要があります。
このチュートリアルのすべての手順をroot権限で実行しているため、続行する前にrootとしてログインしていることを確認してください。
sudo su
2 MySQL/MariaDBのインストール
Ubuntuは、元のMySQLデータベースサーバー(MySQL 5.6)とMySQLフォークMariaDB(10)のパッケージを提供します。今日、ほとんどのユーザーはMariaDBを使用することを好みます。これは、MariaDBがMySQLよりも少し高速であり、開発がより速く進行するためです。ここで何をインストールするかを決定し、両方のオプションについて説明します。 2.1章または2.2章のいずれかに従ってください。ただし、両方に従うことはできません。
2.1MySQLのインストール
次のようにMySQLをインストールします:
apt-get -y install mysql-server-5.6 mysql-client-5.6
MySQLルートユーザーのパスワードを入力するように求められます。このパスワードは[メール保護]ユーザーと[メール保護]ユーザーに有効であるため、後でMySQLルートパスワードを手動で指定する必要はありません。
MySQLの「root」ユーザーの新しいパスワード:<-yourrootsqlpassword
MySQLの「root」ユーザーのパスワードを繰り返します:<-yourrootsqlpassword
2.2MariaDBのインストール
次のようにMariaDBをインストールします:
apt-get -y install mariadb-server mariadb-client
次に、MariaDBのルートパスワードを設定します。
mysql_secure_installation
次の質問があります:
Enter current password for root (enter for none): <-- press enter
Set root password? [Y/n] <-- y
New password: <-- Enter the new MariaDB root password here
Re-enter new password: <-- Repeat the password
Remove anonymous users? [Y/n] <-- y
Disallow root login remotely? [Y/n] <-- y
Reload privilege tables now? [Y/n] <-- y
3Lighttpdのインストール
LighttpdはUbuntuパッケージとして入手できるため、次のようにインストールできます。
apt-get -y install lighttpd
次に、ブラウザをhttp://192.168.1.100/index.lighttpd.htmlに移動すると、Lighttpdプレースホルダーページが表示されます。
LighttpdのデフォルトのドキュメントルートはUbuntuでは/var/ www / htmlで、設定ファイルは/etc/lighttpd/lighttpd.confです。追加の設定は/etc/ lighttpd / conf-availableディレクトリのファイルに保存されます-これらの設定は、/ etc / lighttpd/conf-enabledディレクトリから適切な設定へのシンボリックリンクを作成するlighttpd-enable-modコマンドで有効にできます。 / etc / lighttpd/conf-available内のファイル。 lighttpd-disable-modコマンドを使用して設定を無効にできます。
4PHP5.6のインストール
次のようにインストールするPHP-FPMを使用して、LighttpdでPHP5を動作させることができます。
apt-get -y install php5-fpm php5
PHP-FPMは、ソケット/var/run/php5-fpm.sockでFastCGIサーバーを実行するデーモンプロセス(systemdサービスユニットphp5-fpm.serviceを使用)です。
5LighttpdとPHPの設定
LighttpdでPHP5を有効にするには、/ etc / php5 / fpm / php.iniを変更し、cgi.fix_pathinfo=1の行のコメントを解除する必要があります。
nano /etc/php5/fpm/php.ini
[...] ; cgi.fix_pathinfo provides *real* PATH_INFO/PATH_TRANSLATED support for CGI. PHP's ; previous behaviour was to set PATH_TRANSLATED to SCRIPT_FILENAME, and to not grok ; what PATH_INFO is. For more information on PATH_INFO, see the cgi specs. Setting ; this to 1 will cause PHP CGI to fix its paths to conform to the spec. A setting ; of zero causes PHP to behave as before. Default is 1. You should fix your scripts ; to use SCRIPT_FILENAME rather than PATH_TRANSLATED. ; http://php.net/cgi.fix-pathinfo cgi.fix_pathinfo=1 [...]
PHPのLighttpd設定ファイル/etc/lighttpd/conf-available/15-fastcgi-php.confはspawn-fcgiでの使用に適していますが、PHP-FPMを使用するため、ファイルのバックアップを作成します( 15-fastcgi-php-spawnfcgi.confという名前)、15-fastcgi-php.confを次のように変更します。
cd /etc/lighttpd/conf-available/
cp 15-fastcgi-php.conf 15-fastcgi-php-spawnfcgi.conf
nano 15-fastcgi-php.conf
# /usr/share/doc/lighttpd-doc/fastcgi.txt.gz # http://redmine.lighttpd.net/projects/lighttpd/wiki/Docs:ConfigurationOptions#mod_fastcgi-fastcgi ## Start an FastCGI server for php (needs the php5-cgi package) fastcgi.server += ( ".php" => (( "socket" => "/var/run/php5-fpm.sock", "broken-scriptfilename" => "enable" )) )
fastcgi構成を有効にするには、次のコマンドを実行します。
lighttpd-enable-mod fastcgi
lighttpd-enable-mod fastcgi-php
これにより、/ etc / lighttpd / conf-available/10-fastcgi.confおよび/etc/ lighttpd / conf-enabled/15-fastcgi-phpを指すシンボリックリンク/etc/lighttpd/conf-enabled/10-fastcgi.confが作成されます。 /etc/lighttpd/conf-available/15-fastcgi-php.confを指す.conf:
ls -l /etc/lighttpd/conf-enabled
[email protected]:/etc/lighttpd/conf-available# ls -l /etc/lighttpd/conf-enabled
total 0
lrwxrwxrwx 1 root root 33 Nov 11 13:59 10-fastcgi.conf -> ../conf-available/10-fastcgi.conf
lrwxrwxrwx 1 root root 37 Nov 11 13:59 15-fastcgi-php.conf -> ../conf-available/15-fastcgi-php.conf
次に、Lighttpdをリロードします:
service lighttpd force-reload
6PHP5のテスト/PHP5インストールの詳細の取得
デフォルトのWebサイトのドキュメントルートは/var/ www/htmlです。次に、そのディレクトリに小さなPHPファイル(info.php)を作成し、ブラウザで呼び出します。このファイルには、インストールされているPHPのバージョンなど、PHPのインストールに関する多くの役立つ詳細が表示されます。
nano /var/www/html/info.php
<?php phpinfo(); ?>
次に、そのファイルをブラウザ(http://192.168.1.100/info.phpなど)で呼び出します。
ご覧のとおり、PHP 5.6は機能しており、サーバーAPI行に示されているように、FPM/FastCGIを介して機能しています。さらに下にスクロールすると、PHP5ですでに有効になっているすべてのモジュールが表示されます。 MySQLはそこにリストされていません。つまり、PHPではMySQLがまだサポートされていません。
7PHP5でのMySQLサポートの取得
PHPでMySQLをサポートするには、php5-mysqlndパッケージをインストールします。これは、 php5-mysqlよりも優先されます MySQLとMariaDBをサポートする新しいMySQLドリバーが含まれているためパッケージ。他のPHP5モジュールをインストールすることをお勧めします。また、アプリケーションでそれらが必要になる場合もあります。次のような利用可能なPHP5モジュールを検索できます:
apt-cache search php5
必要なものを選び、次のようにインストールします:
apt-get -y install php5-mysqlnd php5-curl php5-gd php5-intl php-pear php5-imagick php5-imap php5-mcrypt php5-memcache php5-ming php5-ps php5-pspell php5-recode php5-snmp php5-sqlite php5-tidy php5-xmlrpc php5-xsl
Xcacheは、PHP中間コードをキャッシュおよび最適化するための無料のオープンPHPオペコードキャッシャーです。これは、eAcceleratorやAPCなどの他のPHPオペコードキャッシャーに似ています。 PHPページを高速化するために、これらのいずれかをインストールすることを強くお勧めします。
Xcacheは次のようにインストールできます:
apt-get -y install php5-xcache
PHP-FPMをリロードします:
service php5-fpm reload
次に、ブラウザにhttp://192.168.1.100/info.phpをリロードし、モジュールセクションまでスクロールダウンします。これで、MySQLモジュールを含む多くの新しいモジュールが見つかるはずです:
8 phpMyAdmin
phpMyAdminは、MySQLデータベースを管理するためのWebインターフェイスです。インストールすることをお勧めします:
apt-get -y install phpmyadmin
次の質問が表示されます:
自動的に再構成するWebサーバー:<-lighttpd
dbconfig-commonを使用してphpmyadminのデータベースを構成しますか? <-はい
Password of the database's administrative user: <-- Enter the MySQL/MariaDB root password
MySQL application password for phpmyadmin: <-- Press ENTER
その後、http://192.168.1.100/phpmyadmin/からphpMyAdminにアクセスできます:
9 PHP-FPMにTCP接続を使用させる(オプション)
デフォルトでは、PHP-FPMはソケット/var/run/php5-fpm.sockをリッスンしています。 PHP-FPMにTCP接続を使用させることも可能です。これを行うには、/ etc / php5 / fpm / pool.d / www.conf ...
を開きます。nano /etc/php5/fpm/pool.d/www.conf
...そしてリッスンラインを次のように見せます:
[...] ;listen = /var/run/php5-fpm.sock listen = 127.0.0.1:9000 [...]
これにより、PHP-FPMはIP 127.0.0.1(localhost)のポート9000でリッスンします。システムで使用されていないポートを使用していることを確認してください。
次に、PHP-FPMをリロードします:
service php5-fpm reload
次に、LighttpdのPHP構成ファイル/etc/lighttpd/conf-available/15-fastcgi-php.confを開き、ソケットラインをホストラインとポートラインに置き換えます。
nano /etc/lighttpd/conf-available/15-fastcgi-php.conf
# /usr/share/doc/lighttpd-doc/fastcgi.txt.gz # http://redmine.lighttpd.net/projects/lighttpd/wiki/Docs:ConfigurationOptions#mod_fastcgi-fastcgi ## Start an FastCGI server for php (needs the php5-cgi package) fastcgi.server += ( ".php" => (( "host" => "127.0.0.1", "port" => "9000", "broken-scriptfilename" => "enable" )) )
最後にLighttpdをリロードします:
service lighttpd force-reload
10このチュートリアルの仮想マシンイメージのダウンロード
このチュートリアルは、Howtoforgeサブスクライバー向けにovf/ova形式の仮想マシンイメージをすぐに使用できる状態で利用できます。 VMフォーマットはVMWareおよびVirtualboxと互換性があります。仮想マシンイメージは、次のログイン詳細を使用します:
SSH/シェルログイン
ユーザー名:管理者
パスワード:howtoforge
このユーザーにはsudo権限があります。
MySQL/MariaDBログイン
ユーザー名:root
パスワード:howtoforge
VMのIPは192.168.1.100で、ファイル/ etc / network/interfacesで変更できます。仮想マシンを保護するために、上記のすべてのパスワードを変更してください。
11リンク
- lighttpd:http://www.lighttpd.net/
- PHP:http://www.php.net/
- PHP-FPM:http://php-fpm.org/
- MySQL:http://www.mysql.com/
- Ubuntu:http://www.ubuntu.com/
- phpMyAdmin:http://www.phpmyadmin.net/