首页 > 开发 > PHP > 正文

在Debian系统下配置LNMP的教程

2024-05-04 23:37:31
字体:
来源:转载
供稿:网友

这篇文章主要介绍了在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

执行命令:

 

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

即可安装MySQL,安装过程中会询问 root密码 ,键入你需要的密码之后回车即可。

安装完成后,执行如下命令进行一步安全设置:

 

 
  1. mysql_secure_installation 

按照提示进行,过程中会询问是否更改 root密码,是否移除匿名用户,是否禁止root远程登录等。

2,安装PHP

执行命令:

 

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

上面的命令安装了php5-memcache的扩展,于是继续安装 Memcached 。

 

 
  1. apt-get install memcached 

安装完毕之后,使用 php5-fpm -v 查看一下PHP的版本:

 

 
  1. 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),以应对以后可能出现的功能性增强。

 

 
  1. apt-get install -y nginx-full 

然后启动Nginx:

 

 
  1. service nginx start 

访问结果如上图,接下来配置Nginx。

 

 
  1. 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:

 

 
  1. service nginx restart 

接下来我们新建一个phpinfo,查看php的详细信息:

 

 
  1. vim /usr/share/nginx/html/phpinfo.php 
  2.  
  3. <?php phpinfo(); ?> 

保存之后访问 http://ip/phpinfo.php , 如果出现 phpinfo 页面,则大功告成。

如何新建站点

和军哥的一键包不同,此方法所安装的 LNMP 需要手动添加站点配置文件。

  1. cd /etc/nginx/conf.d 


进入配置文件目录,新建一个站点配置文件,比如

  1. vi dearroy.com.conf 
  2.  
  3.  
  4. server { 
  5. listen 80; 
  6.  
  7. #ipv6 
  8. #listen [::]:80 default_server; 
  9.  
  10. root /usr/share/nginx/html/dearroy.com; 
  11.  
  12. #默认首页文件名 
  13. index index.php index.html index.htm; 
  14.  
  15. #绑定域名 
  16. server_name localhost; 
  17.  
  18. #伪静态规则 
  19. include wordpress.conf; 
  20.  
  21. location / { 
  22. try_files $uri $uri/ /index.html;  
  23. #定义错误页面 
  24. #error_page 404 /404.html;  
  25.  
  26. location ~ .php$ { 
  27. fastcgi_split_path_info ^(.+.php)(/.+)$; 
  28. fastcgi_pass 127.0.0.1:9000; 
  29. fastcgi_index index.php; 
  30. include fastcgi_params; 
  31. #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;
 
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表