Debianシステムの下でLNMPを構成するチュートリアル

4523 ワード

LNMP環境の構成は、ホストにNginx、MySQL、PHP、phpMyAdminをサポートさせる必要があります.このように構成すれば、この環境を直接使用して、上でウェブサイトを実行することができます.以下、私が構成方法を説明します.
まず公式の説明を見てみましょう
LNMPワンタッチインストールパッケージは、Linux Shellによって作成されたCentOS/RadHat、Debian/Ubuntu VPS(VDS)または独立ホストにLNMP(Nginx、MySQL、PHP、phpMyAdmin)の本番環境をインストールできるShellプログラムである
1,MySQL実行コマンドをインストールする:

apt-get install -y mysql-server mysql-client


MySQLをインストールできます.インストール中にrootパスワードを尋ね、必要なパスワードを入力して車に戻ればいいです.
インストールが完了したら、次のコマンドを実行してセキュリティ設定を行います.

mysql_secure_installation


プロンプトに従って、rootパスワードを変更するかどうか、匿名ユーザーを削除するかどうか、rootリモートログインを禁止するかどうかなどを尋ねます.2,PHP実行命令をインストールする:

apt-get install php5-fpm php5-gd php5-mysql php5-memcache php5-curl


上のコマンドはphp 5-memcacheの拡張子をインストールし、Memcachedのインストールを続行します.

apt-get install memcached


インストールが完了したら、php 5-fpm-vを使用してPHPのバージョンを確認します.

 
root@ztbox:~# php5-fpm -v

PHP 5.4.16-1~dotdeb.1 (fpm-fcgi) (built: Jun  8 2013 22:20:42) Copyright (c) 1997-2013 The PHP Group Zend Engine v2.4.0, Copyright (c) 1998-2013 Zend Technologies
3,インストールNginx
ここでは、今後発生する可能性のある機能性の向上に対応するために、Nginxのすべての拡張機能(nginx-full)を直接インストールしました.

apt-get install -y nginx-full


次に、Nginxを起動します.

service nginx start


アクセス結果は上図のように、次にNginxを構成します.

vim /etc/nginx/sites-available/default


……     location ~ .php$ {         fastcgi_split_path_info ^(.+.php)(/.+)$;     #    # NOTE: You should have "cgi.fix_pathinfo = 0;"in php.ini     #     #    # With php5-cgi alone:     #   fastcgi_pass 127.0.0.1:9000;     #    # With php5-fpm:         fastcgi_pass unix:/var/run/php5-fpm.sock;         fastcgi_index index.php;         include fastcgi_params;     } ……
保存を変更してNginxを再起動するには、次の手順に従います.

service nginx restart


次にphpinfoを新規作成し、phpの詳細を表示します.

vim /usr/share/nginx/html/phpinfo.php




保存後のアクセスhttp://ip/phpinfo.php 、phpinfoページが表示されると、大きな成果が得られます.
サイトを新規作成する方法は、Wikiとは異なり、この方法でインストールされているLNMPは、サイトプロファイルを手動で追加する必要があります.

cd /etc/nginx/conf.d


プロファイルディレクトリに入り、サイトプロファイルを新規作成します.たとえば、

vi dearroy.com.conf


server {
  listen 80;

 #ipv6
  #listen [::]:80 default_server;

  root /usr/share/nginx/html/dearroy.com;

 #       
  index index.php index.html index.htm;

 #    
  server_name localhost;

 #     
 include wordpress.conf;

  location / {
    try_files $uri $uri/ /index.html;    
  }
 #      
  #error_page 404 /404.html; 

  location ~ .php$ {
    fastcgi_split_path_info ^(.+.php)(/.+)$;
    fastcgi_pass 127.0.0.1:9000;
     fastcgi_index index.php;
     include fastcgi_params;
   }
   #PHP
}


保存後にNginxを再起動し、Webサイトの追加とバインドが完了します.
最後に、最も一般的な2つのプログラムNginx擬似静的を添付します.
WordPress:  

   location / { 
  
if (-f $request_filename/index.html){
                rewrite (.*) $1/index.html break;
        }
if (-f $request_filename/index.php){
                rewrite (.*) $1/index.php;
        }
if (!-f $request_filename){
                rewrite (.*) /index.php;
        }
}

Discuz X:

   rewrite ^([^.]*)/topic-(.+).html$ $1/portal.php?mod=topic&topic=$2 last; 
  
rewrite ^([^.]*)/article-([0-9]+)-([0-9]+).html$ $1/portal.php?mod=view&aid=$2&page=$3 last;
rewrite ^([^.]*)/forum-(w+)-([0-9]+).html$ $1/forum.php?mod=forumdisplay&fid=$2&page=$3 last;
rewrite ^([^.]*)/thread-([0-9]+)-([0-9]+)-([0-9]+).html$ $1/forum.php?mod=viewthread&tid=$2&extra=page%3D$4&page=$3 last;
rewrite ^([^.]*)/group-([0-9]+)-([0-9]+).html$ $1/forum.php?mod=group&fid=$2&page=$3 last;
rewrite ^([^.]*)/space-(username|uid)-(.+).html$ $1/home.php?mod=space&$2=$3 last;
rewrite ^([^.]*)/([a-z]+)-(.+).html$ $1/$2.php?rewrite=$3 last;
if (!-e $request_filename) {
        return 404;