在Debian系统下配置LNMP的教程

 更新时间:2015年07月09日 10:29:59   投稿:goldensun  
这篇文章主要介绍了在Debian系统下配置LNMP的教程,较之常见的LAMP,即把Apache换成高性能的Nginx服务器,需要的朋友可以参考下

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;

相关文章

  • 详解php中的类与对象(继承)

    详解php中的类与对象(继承)

    在php中,类型的继承使用extends关键字,而且最多只能继承一个父类,php不支持多继承。这篇文章主要介绍了php中的类与对象(继承),需要的朋友可以参考下
    2017-12-12
  • 微信支付开发教程(一)微信支付URL配置

    微信支付开发教程(一)微信支付URL配置

    现阶段微信火的厉害,所以相应的关于微信的开发需求也就多了起来,这个系列我们就来谈谈微信支付的开发,本文是第一篇,微信支付URL配置
    2014-05-05
  • CI操作cookie的方法分析(基于helper类库)

    CI操作cookie的方法分析(基于helper类库)

    这篇文章主要介绍了CI操作cookie的方法,结合实例形式分析了CI使用helper类库的cookie类库实现操作cookie的相关技巧,需要的朋友可以参考下
    2016-03-03
  • php插入mysql数据返回id的方法

    php插入mysql数据返回id的方法

    今天小编就为大家分享一篇php插入mysql数据返回id的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-05-05
  • PHP实现的7组经纬度与距离的计算函数demo

    PHP实现的7组经纬度与距离的计算函数demo

    这篇文章主要为大家介绍了PHP实现的7组经纬度与距离的计算函数demo,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-05-05
  • PHP中DirectIO操作文件扩展的用法大全

    PHP中DirectIO操作文件扩展的用法大全

    Direct IO 其实是 Linux 操作系统中的一个概念,今天通过本文给大家介绍PHP中DirectIO直操作文件扩展的使用,需要的朋友参考下吧
    2021-07-07
  • PHPMailer邮件类利用smtp.163.com发送邮件方法

    PHPMailer邮件类利用smtp.163.com发送邮件方法

    利用smtp.163.com 发送邮件(本地无需服务器)
    2008-09-09
  • Laravel多用户认证系统示例详解

    Laravel多用户认证系统示例详解

    这篇文章主要给大家介绍了关于Laravel多用户认证系统的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧。
    2018-03-03
  • 双冒号 ::在PHP中的使用情况

    双冒号 ::在PHP中的使用情况

    前几天在百度知道里面看到有人问PHP中双冒号::的用法,当时给他的回答比较简洁因为手机打字不大方便!今天突然想起来,所以在这里总结一下我遇到的双冒号::在PHP中使用的情况
    2015-11-11
  • smarty模板引擎基础知识入门

    smarty模板引擎基础知识入门

    这篇文章主要介绍了smarty模板引擎基础知识入门,较为详细的分析了smarty的基本概念并实例分析了相关的基本用法,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-03-03

最新评论