GNU/Linux >> Linux の 問題 >  >> Ubuntu

Debian Squeeze / Ubuntu 12.10のNginx(LEMP)でconcrete5を実行する

このチュートリアルでは、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のダッシュボードです:

そして、これはデモサイトが通常の訪問者にどのように見えるかです:

  • 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」にも寄稿しています。


Ubuntu
  1. Ubuntu 18.04 /Debian9にNginxをインストールして構成する方法

  2. Ubuntu16.04にLEMPをインストールする方法

  3. Ubuntu18.04にLEMPをインストールする方法

  1. Debian Wheezy / Ubuntu 13.10でのNginx(LEMP)でのTYPO36.2の実行

  2. Ubuntu 15.10のNginx(LEMP)にTYPO37をインストールする方法

  3. Ubuntu16.04にNginx(LEMP)でTYPO38.1をインストールする方法

  1. Ubuntu14.10上のNginx1.7.9+ PHP5-FPM + MySQL(LEMP)

  2. Ubuntu20.04にLEMPスタックをインストールする方法

  3. Nginx(LEMPスタック)を使用してUbuntu20.04にProjectSendをインストールします