このチュートリアルでは、Apacheの代わりにnginxがインストールされているDebianSqueezeまたはUbuntu12.10システムにconcrete5Webサイトをインストールして実行する方法を示します(LEMP = L inux + nginx(「 e 」と発音) ngine x ")+ M ySQL + P HP)。 nginxは、Apacheよりもはるかに少ないリソースを使用し、ページ、特に静的ファイルをはるかに高速に配信するHTTPサーバーです。 Concrete5は、無料のオープンソースコンテンツ管理システム(CMS)です。
これがあなたのために働くという保証はありません!
1予備メモ
ここで、ドキュメントルート/var/www/www.example.com/webを使用してwww.example.com/example.comという仮想ホストにconcrete5をインストールしたいと思います。
次のチュートリアルに示すように、LEMPが正常にインストールされている必要があります。
- DebianSqueezeでのPHP5とMySQLサポートを使用したNginxのインストール
- Ubuntu 12.10でのPHP5(およびPHP-FPM)とMySQLサポートを使用したNginxのインストール
Ubuntuユーザーへの注意:
このチュートリアルのすべてのステップをroot権限で実行する必要があるため、このチュートリアルのすべてのコマンドの前に文字列sudoを付けるか、「
」と入力して今すぐrootになります。sudo su
2APCのインストール
APCは、PHP中間コードをキャッシュおよび最適化するための無料のオープンPHPオペコードキャッシャーです。これは、eAcceleratorやXCacheなどの他のPHPオペコードキャッシャーに似ています。 PHPページを高速化するために、これらのいずれかをインストールすることを強くお勧めします。
APCは次のようにインストールできます:
apt-get install php-apc
FastCGIデーモンとしてPHP-FPMを使用する場合(PHP5(およびPHP-FPM)とMySQLサポートをUbuntu 12.10にインストールする場合など)、次のように再起動します。
/etc/init.d/php5-fpm restart
lighttpdのspawn-fcgiプログラムをFastCGIデーモンとして使用する場合(Debian SqueezeでのPHP5とMySQLサポートを使用したNginxのインストールなど)、現在のspawn-fcgiプロセス(ポート9000で実行)を強制終了し、新しいプロセスを作成する必要があります。実行
netstat -tap
現在のspawn-fcgiプロセスのPIDを確認するには:
[email protected]:~# netstat -tap
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 *:sunrpc *:* LISTEN 734/portmap
tcp 0 0 *:www *:* LISTEN 2987/nginx
tcp 0 0 *:ssh *:* LISTEN 1531/sshd
tcp 0 0 *:57174 *:* LISTEN 748/rpc.statd
tcp 0 0 localhost.localdom:smtp *:* LISTEN 1507/exim4
tcp 0 0 localhost.localdom:9000 *:* LISTEN 1542/php5-cgi
tcp 0 0 localhost.localdo:mysql *:* LISTEN 1168/mysqld
tcp 0 52 server1.example.com:ssh 192.168.0.198:2462 ESTABLISHED 1557/0
tcp6 0 0 [::]:www [::]:* LISTEN 2987/nginx
tcp6 0 0 [::]:ssh [::]:* LISTEN 1531/sshd
tcp6 0 0 ip6-localhost:smtp [::]:* LISTEN 1507/exim4
[email protected]:~#
上記の出力では、PIDは1542であるため、次のように現在のプロセスを強制終了できます。
kill -9 1542
その後、新しいspawn-fcgiプロセスを作成します:
/usr/bin/spawn-fcgi -a 127.0.0.1 -p 9000 -u www-data -g www-data -f /usr/bin/php5-cgi -P /var/run/fastcgi-php.pid
3コンクリートのインストール5
私のwww.example.comWebサイトのドキュメントルートは/var/www/www.example.com/webです。存在しない場合は、次のように作成します。
mkdir -p /var/www/www.example.com/web
Concrete5は.zipファイルとして提供されるため、unzipをインストールする必要があります:
apt-get install unzip
次に、concrete5(http://www.concrete5.org/developers/downloads/)をダウンロードして、ドキュメントルートに配置します:
cd /tmp
mkdir concrete5
cd concrete5
wget -O concrete5.6.0.2.zip http://www.concrete5.org/download_file/-/view/44326/8497/
unzip concrete5.6.0.2.zip
rm -f concrete5.6.0.2.zip
cd concrete5.6.0.2/
mv * /var/www/www.example.com/web/
ドキュメントルートとその中のconcrete5ファイルを、ユーザーwww-dataおよびグループwww-dataとして実行されているnginxデーモンによって書き込み可能にすることをお勧めします:
chown -R www-data:www-data /var/www/www.example.com/web
Concrete5用のMySQLデータベース(MySQLconcrete5ユーザーを含む)をまだ作成していない場合は、次のように作成できます(この例では、データベースにconcrete5という名前を付け、ユーザーはconcrete5_adminと呼ばれ、パスワードはconcrete5_admin_passwordです)。
mysqladmin -u root -p create concrete5
mysql -u root -p
GRANT ALL PRIVILEGES ON concrete5.* TO 'concrete5_admin'@'localhost' IDENTIFIED BY 'concrete5_admin_password';
GRANT ALL PRIVILEGES ON concrete5.* TO 'concrete5_admin'@'localhost.localdomain' IDENTIFIED BY 'concrete5_admin_password';
FLUSH PRIVILEGES;
quit;
次に、www.example.com仮想ホストのnginx仮想ホスト構成を/ etc / nginx / sites-available /ディレクトリに次のように作成します(PHPの場所の場所を調整しました〜\ .php($ | /){} http://www.justasysadmin.net/en/practical/configuration-concrete-5-nginx/へ:
vi /etc/nginx/sites-available/www.example.com.vhost
server { listen 80; server_name www.example.com example.com; root /var/www/www.example.com/web; if ($http_host != "www.example.com") { rewrite ^ http://www.example.com$request_uri permanent; } index index.php index.html index.htm default.html default.htm; location = /favicon.ico { log_not_found off; access_log off; } location = /robots.txt { allow all; log_not_found off; access_log off; } # Deny all attempts to access hidden files such as .htaccess, .htpasswd, .DS_Store (Mac). location ~ /\. { deny all; access_log off; log_not_found off; } location / { try_files $uri $uri/ /index.php$request_uri /index.php; } location ~ \.php($|/) { try_files $uri =404; fastcgi_pass unix:/var/run/php5-fpm.sock; # use this if PHP-FPM is running on Unix socket /var/run/php5-fpm.sock (Ubuntu 12.10 default) #fastcgi_pass 127.0.0.1:9000; # use this if PHP-FPM is running on TCP port 9000 (Debian Squeeze default) include /etc/nginx/fastcgi_params; fastcgi_index index.php; set $script $uri; set $path_info ""; if ($uri ~ "^(.+\.php)(/.+)") { set $script $1; set $path_info $2; } fastcgi_param URI $uri; fastcgi_param PATH_INFO $path_info; fastcgi_param SCRIPT_NAME $script; fastcgi_param SCRIPT_FILENAME $document_root$script; } } |
その仮想ホストを有効にするには、/ etc / nginx /sites-enabled/ディレクトリから仮想ホストへのシンボリックリンクを作成します。
cd /etc/nginx/sites-enabled/
ln -s /etc/nginx/sites-available/www.example.com.vhost www.example.com.vhost
変更を有効にするためにnginxをリロードします:
/etc/init.d/nginx reload
これで、http://www.example.comにアクセスしてWebベースのconcrete5インストーラーを起動できます。システムがすべての要件を満たしていることを確認し、[インストールを続行]をクリックします。
次に、サイト名、管理者の電子メールアドレス、およびパスワードを指定し、MySQLデータベースの詳細を入力します。次に下にスクロールします:
ページの下部で、デモコンテンツまたは空のサイトをインストールすることを選択できます。選択して、[concrete5のインストール]をクリックします:
Concrete5がインストールされています:
インストールが正常に完了すると、このメッセージが表示されます。 [サイトに進む]をクリックして、concrete5のフロントページに移動します:
初めてフロントページにアクセスすると、役立つリンクを含むJavascriptオーバーレイがあります。クリックして離れることができます:
これがフロントページの外観です(デモコンテンツ付き)。実際のURLはそのままで機能するはずです。
これはconrete5のダッシュボードです:
そして、これはデモサイトが通常の訪問者にどのように見えるかです:
4つのリンク
- concrete5:http://www.concrete5.org/
- nginx:http://nginx.org/
- nginx Wiki:http://wiki.nginx.org/
- Debian:http://www.debian.org/
- Ubuntu:http://www.ubuntu.com/
FalkoTimmeはの所有者 Timme Hosting(超高速nginx Webホスティング)。彼はHowtoForge(2005年以降)の主任メンテナーであり、ISPConfig(2000年以降)のコア開発者の1人です。彼はまた、O'Reillyの本「LinuxSystemAdministration」にも寄稿しています。