美文网首页
Linux下的LNMP环境的搭建和部署

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

作者: 封不然 | 来源:发表于2016-07-10 18:00 被阅读920次

    首先介绍下在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环境的搭建和部署

          本文链接:https://www.haomeiwen.com/subject/mspdjttx.html