程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> PHP綜合 >> 在Debian系統下配置LNMP的教程

在Debian系統下配置LNMP的教程

編輯:PHP綜合

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

上面的命令安裝了php5-memcache的擴展,於是繼續安裝 Memcached 。

apt-get install memcached

安裝完畢之後,使用 php5-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

<?php phpinfo(); ?>

保存之後訪問 http://ip/phpinfo.php , 如果出現 phpinfo 頁面,則大功告成。

如何新建站點
和軍哥的一鍵包不同,此方法所安裝的 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,添加及綁定網站即完成。

最後,附兩個最常用的程序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;

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved