Linux下的LNMP环境的搭建和部署

首先介绍下在Ubuntu下对于LNMP下的安装和配置,当然,如果学习用的话,更推荐的是直接安装lnmp的集成开发环境,一次性安装所需的所有。

一、一键安装:

1、获取LNMP源码:命令: wget http://soft.vpser.net/lnmp/lnmp1.2-full.tar.gz
2、解压:命令:tar -xvf lnmp1.2-full.tar.gz
3、进入源码目录:命令: cd lnmp1.2-full/
4、进行安装命令:./install.sh

安装和部署时间较长请耐心等待,期间可能会遇到进程被占用的问题,直接kill掉那个进程,就可以继续进行安装:错误提示意思是“PID 为 xxxx 的另一个程序正在运行。 另外一个程序锁定了 yum;等待它退出……”解决命令:kill -9 (那个pid)【网上很多地方说的直接删除yum的命令最好不要采取】

二、逐个安装部署:

1、安装Nginx服务器
命令:sudo apt-get install nginx
目录:
(1)所有的配置文件都在/etc/nginx下,并且每个虚拟主机已经安排在了/etc/nginx/sites-available下;
(2)启动程序文件在/usr/sbin/nginx;
(3)日志放在了/var/log/nginx中,分别是access.log和error.log并已经在/etc/init.d/下创建了启动脚本nginx;
(4)默认的虚拟主机的目录设置在了/usr/share/nginx/www(可能会有些许差别);

配置nginx伪静态(以阿里云服务器为例):

server { 
  listen 80;(端口号) 
  server_name localhost; 
  index index.html index.htm index.php; 
  Root /alidata/www/网站目录; 
  location ~ .*\.(php|php5)?${ 
    #fastcgi_pass unix:/tmp/php-cgi.sock; 
    fastcgi_pass 127.0.0.1:9000; 
    fastcgi_index index.php; 
    include fastcgi.conf; 
  } 
  location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)${ 
    expires 30d; 
  } 
  location ~ .*\.(js|css)?${ 
    expires 1h; 
  }
  #伪静态规则 
  location / { 
    if (!-e $request_filename){ 
      //若写成 ^/(.*)$ /index.php?s=$1 last;变回出现访问问题,现在thinkphp框架中相当于访问了两次index.php,也就是说url拼接的位置是不对的,在apache中不需要担心,nginx中需要考虑,因为nginx中不支持伪静态 
      rewrite ^/index.php/(.*)$ /index.php?s=$1 last; 
    } 
  } 
include /alidata/server/nginx/conf/rewrite/default.conf; 
access_log /alidata/log/nginx/access/default.log;
}

2、安装mysql数据库
命令:

sudo apt-get install mysql-server mysql-clientsudo apt-get install php5-mysql (安装php5-mysql 是将php和mysql连接起来 )
    测试是否可用:Mysql –u root -p

注:一旦安装完成,MySQL 服务器应该自动启动。您可以在终端提示符后运行以下命令来检查 MySQL 服务器是否正在运行:sudo netstat -tap | grep mysql

当您运行该命令时,您可以看到类似下面的行:tcp 0 0 localhost.localdomain:mysql : LISTEN -如果服务器不能正常运行,您可以通过下列命令启动它:sudo /etc/init.d/mysql restart或者是sudo service mysql start

进入mysql:mysql -uroot -p 管理员密码配置 MySQL 的管理员密码:sudo mysqladmin -u root password newpassword

开放外网访问权限:

1、编辑 my.cnf 文件:sudo vi /etc/mysql/my.cnf
2、将绑定地址行注释掉或者修改为指定 IP:#bind-address = 127.0.0.1
3、登录 MySQL:mysql -uroot -p密码
4、添加 root 用户访问权限:grant all privileges on *.* to 'root'@'%' identified by '密码';
5、flush privileges; 
6、查看 user 权限,成功修改权限为 %:select host,user from mysql.user;
+------------+----------------+
| host | user |
+------------+----------------+
| % | root || 127.0.0.1 | root || localhost | root |
+------------+----------------+

重启 MySQL:sudo /etc/init.d/mysql restart

3、安装PHP命令:

sudo apt-get install php5 php5-mysql libapache2-mod-php5 php5-curl php5-memcache php5-json (安装PHP以及 其支持)

测试Nginx对PHP的支持:
1、重新启动nginx:/etc/init.d/nginx restart
2、启动FastCGI:spawn-fcgi -a 127.0.0.1 -p 9000 -C 10 -u www-data -f /usr/bin/php-cgi
3、spawn-fcgi启动出现错误时,查看php-cgi是否安装,如果么有的话,安装php5-cgi。命令:sudo apt-get install php5-cgi
4、其他缓存等服务命令:sudo apt-get install screen; sudo apt-get install memcached;

Linux下的LNMP环境的搭建和部署_第1张图片
我的公众号

你可能感兴趣的:(Linux下的LNMP环境的搭建和部署)