セキュリティ、速度、コンプライアンス、柔軟性—これらはすべてlighttpd(pron。> lighty)これはWebサーバーの効率を急速に再定義しています。高性能環境向けに設計および最適化されているためです。他のWebサーバーと比較してメモリフットプリントが小さく、cpu-loadの効果的な管理、および高度な機能セット(FastCGI、SCGI、Auth、Output-Compression、URL-Rewritingなど)を備えたlighttpdは、すべてのサーバーに最適なソリューションです。それは負荷の問題に苦しんでいます。そして何よりも、改訂されたBSDライセンスの下でライセンスされたオープンソースです。
ここでは、openSUSE12.1でのPHPおよびMySQLを使用したlighttpのインストールについて説明します。
Lighttpdのインストール:
まず、Lighttpdをインストールします。
ターミナルとSwicthをrootユーザーに開きます。
[raj@geeksite~/]$ su
ターミナルで次のコマンドを入力し、Enterキーを押します。
[root@geeksite~/]# zypper in lighttpd
次のコマンドを使用してlighttpdを起動します。
[root@geeksite~/]# systemctl start lighttpd.service
起動するたびにApacheを起動するには、ターミナルで次のように入力してEnterキーを押します。
[root@geeksite~/]# systemctl enable lighttpd.service
Lighttpdのテスト:
すべてが正しくインストールされていることを確認するために、Lighttpdをテストして正しく機能していることを確認します。任意のWebブラウザを開き、Webアドレスに次のように入力します。
http://localhost/ or http://your.ip.addr.ess
デフォルトのドキュメントルートでindex.htmlファイルが利用できないため、「404 –見つかりません」というウェブページが表示されます。lighttpdのデフォルトのドキュメントルートは / srv / www / htdocs openSUSEで;設定ファイルは/etc/lighttpd/lighttpd.conf 追加の設定は/etc/lighttpd/conf.d/に保存されます ディレクトリ。
MySQLのインストール:
次はMySQLサーバーのインストールです。MySQLはopenSUSEパッケージで利用できます。次のコマンドを発行してインストールしてください。
[root@geeksite~/]# zypper in mysql-community-server mysql-community-server-client php5-mysql
MySQLサーバーを起動します。
[root@geeksite~/]# systemctl start mysql.service
起動するたびにMySQLを起動するには、ターミナルで次のように入力し、Enterキーを押します。
[root@geeksite~/]# systemctl enable mysql.service
次は、 mysql_secure_installationを使用してMySQLを安全にすることです。 コマンド。
このプログラムを使用すると、次の方法でMySQLインストールのセキュリティを向上させることができます。
-
root
のパスワードを設定できます アカウント。 -
root
を削除できます ローカルホストの外部からアクセスできるアカウント。 - 匿名ユーザーアカウントを削除できます。
test
を削除できます データベース(デフォルトでは、匿名ユーザーを含むすべてのユーザーがアクセスできます)、およびtest_
で始まる名前のデータベースに誰でもアクセスできるようにする特権 。
[root @ geeksite〜/]# mysql_secure_installation
注:このスクリプトのすべての部分を実行することは、すべてのMySQLに推奨されます
本番環境で使用されているサーバー!各ステップを注意深くお読みください。
MySQLにログインしてセキュリティを確保するには、最新のものが必要です
rootユーザーのパスワード。 MySQLをインストールしたばかりの場合は、
まだルートパスワードを設定していません。パスワードは空白になります
したがって、ここでEnterキーを押すだけです。
rootの現在のパスワードを入力します(noneの場合は入力します): <– ENTER
OK、パスワードの使用に成功しました。次に進みます…
ルートパスワードを設定すると、誰もMySQLにログインできないようになります
適切な承認なしのrootユーザー。
ルートパスワードを設定しますか? [Y / n] <– ENTER
新しいパスワード: <– yourrootsqlpassword
新しいパスワードを再入力します: <– yourrootsqlpassword
パスワードが正常に更新されました!
特権テーブルの再読み込み..
…成功!
デフォルトでは、MySQLのインストールには匿名のユーザーがいて、誰でも許可されます
ユーザーアカウントを作成せずにMySQLにログインする
それら。これは、テストとインストールの作成のみを目的としています。
少しスムーズになります。に移動する前に、それらを削除する必要があります
本番環境。
匿名ユーザーを削除しますか? [Y / n] <– ENTER
…成功!
通常、rootは「localhost」からの接続のみを許可する必要があります。これ
ネットワークからのルートパスワードを誰かが推測できないようにします。
rootログインをリモートで禁止しますか? [Y / n] <– ENTER
…成功!
デフォルトでは、MySQLには「test」という名前のデータベースが付属しており、誰でも使用できます。
アクセス。これもテストのみを目的としているため、削除する必要があります
本番環境に移行する前。
テストデータベースを削除してアクセスしますか? [Y / n] <– ENTER
–テストデータベースの削除…
…成功!
–テストデータベースの特権を削除しています…
…成功!
特権テーブルを再読み込みすると、これまでに行われたすべての変更が確実になります
すぐに有効になります。
今すぐ特権テーブルをリロードしますか? [Y / n] <– ENTER
…成功!
クリーンアップ…
すべて完了です。上記のすべての手順を完了した場合は、MySQL
インストールは安全になっているはずです。
MySQLをご利用いただきありがとうございます!
PHP5のインストール:
次に、FastCGIを使用してopenSUSEにPHP 5をインストールします。openSUSEは、FastCGI対応のPHP5パッケージを提供します。次のコマンドを発行してインストールできます。
[root@geeksite~/]# zypper in php5-fastcgi
PHP 5の構成:
LighttpdでPHP5を有効にするには、構成ファイル/etc/php5/fastcgi/php.iniとを変更する必要があります。 行のコメントを解除しますcgi.fix_pathinfo=1:
[root@ubuntu~/]# vi /etc/php5/fastcgi/php.ini
[…]
; PATH_TRANSLATEDではなくSCRIPT_FILENAMEを使用します。
; http://php.net/cgi.fix-pathinfo
cgi.fix_pathinfo=1
[...]
FastCGIの有効化:
FastCGIを有効にするには、次のファイルを編集する必要があります。
[root@geeksite~/]# vi /etc/lighttpd/modules.conf
[行番号:132]のコメントを外します。
include "conf.d/fastcgi.conf"
Lighttpdを実行するための権限を作成して有効にします。
[root@geeksite~/]# mkdir /var/run/lighttpd [root@geeksite~/]# chown lighttpd.lighttpd /var/run/lighttpd
次のファイルを編集して、FastCGIを構成します。
[root@geeksite~/]# vi /etc/lighttpd/conf.d/fastcgi.conf
ファイルの最後に次の行を追加します。
fastcgi.server = ( ".php" => ( "localhost" => ( "socket" => "/var/run/lighttpd/php-fastcgi.socket", "bin-path" => "/usr/bin/php-cgi", "max-procs" => 5, "bin-environment" => ( "PHP_FCGI_CHILDREN" => "16", "PHP_FCGI_MAX_REQUESTS" => "10000" ), "broken-scriptfilename" => "enable" ) ) )
次に、必要なすべてのサービスを再起動します。
[root@geeksite~/]# systemctl restart lighttpd.service [root@geeksite~/]# systemctl restart mysql.service
PHPのテスト:
PHPをテストするには、1つのPHPファイルをLighttpdのデフォルトディレクトリに配置します。デフォルトのWebサイトのドキュメントルートは/sr / www / htdocsです。 。次に、そのディレクトリに小さなPHPファイル(info.php)を作成し、ブラウザで呼び出します。このファイルには、インストールされているPHPのバージョンなど、PHPのインストールに関する多くの役立つ詳細が表示されます。
ターミナルで次の行をコピーして貼り付けます:
[root@geeksite~/]# vi /sr/www/htdocs/info.php
これにより、 info.phpというファイルが開きます。 。
この行をコピーしてphpinfoファイルに貼り付けます:
<?php
phpinfo();
?>
ファイルを保存して閉じます。 Esc +; wqを使用します ファイルを保存します。
次に、Webブラウザを開いて、Webアドレスに次のように入力します。
http://localhost/info.php or http://your.ip.add-ress/info.php
ページは次のようになります:
ブラウザを下にスクロールしてモジュールセクションに移動し、MySQLのサポートを確認します。以下のような画面が表示されます。
以上です!
クレジット:
FastCGI構成を提供してくれたChristianForondaに感謝します。