找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 2033|回复: 0
打印 上一主题 下一主题

在Debian系统下配置LNMP的教程

[复制链接]

2647

主题

2647

帖子

7881

积分

论坛元老

Rank: 8Rank: 8

积分
7881
跳转到指定楼层
楼主
发表于 2018-2-14 05:44:16 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

            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
保存之后访问 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:

[U]复制代码[/U] 代码如下: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:
[U]复制代码[/U] 代码如下: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;
            
            
        
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

用户反馈
客户端