首页 > 代码库 > LNMP
LNMP
LNMP代表的就是:Linux系统下Nginx+MySQL+PHP这种网站服务器架构。
Linux是一类Unix计算机操作系统的统称,是目前最流行的免费操作系统。代表版本有:debian、centos、ubuntu、fedora、gentoo等。
Nginx是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP代理服务器。
Mysql是一个小型关系型数据库管理系统。
PHP是一种在服务器端执行的嵌入HTML文档的脚本语言。
这四种软件均为免费开源软件,组合到一起,成为一个免费、高效、扩展性强的网站服务系统。
特点:
Nginx是一个小巧而高效的Linux下的Web服务器软件,是由 Igor Sysoev 为俄罗斯访问量第二的 Rambler 站点开发的,已经在一些俄罗斯的大型网站上运行多年,相当的稳定。
Nginx性能稳定、功能丰富、运维简单、处理静态文件速度快且消耗系统资源极少。
优点:
作为 Web 服务器:相比 Apache,Nginx 使用更少的资源,支持更多的并发连接,体现更高的效率。
作为负载均衡服务器:Nginx 既可以在内部直接支持Rails和PHP,也可以支持作为 HTTP代理服务器对外进行服务。Nginx 用C编写,不论是系统资源开销还是CPU使用效率都比Perlbal要好的多。
作为邮件代理服务器:Nginx同时也是一个非常优秀的邮件代理服务器(最早开发这个产品的目的之一也是作为邮件代理服务器),Last/fm 描述了成功并且美妙的使用经验。
Nginx 安装非常的简单,配置文件非常简洁(还能够支持perl语法)。Nginx支持平滑加载新的配置,还能够在不间断服务的情况下进行软件版本的升级。
Hostname
|
OS
|
IP
|
Software
|
LNMP.test.com
|
CentOS6.5-x86_64
|
172.16.1.111
|
pcre-devel/zlib-devel/gd/libxml2-devel/libjpeg-devel/libpng-devel/nginx-1.6.3.tar.gz/cmake-2.8.5.tar.gz/mysql-5.5.22.tar.gz/ php-5.3.28.tar.gz |
1.安装配置Nginx服务
## 安装pcre-devel、zlib-devel支持包 ##
[root@ LNMP ~]# yum install -y pcre-devel zlib-devel ## 创建运行用户nginx ## [root@ LNMP ~]# useradd -M -s /sbin/nologin nginx ## 解压安装Nginx ## [root@ LNMP ~]# tar zxvf /opt/nginx-1.6.0.tar.gz -C /usr/src/ [root@ LNMP ~]# cd /usr/src/nginx-1.6.0/ [root@LNMP nginx-1.6.0]# ./configure --prefix=/usr/local/nginx --user=nginx --group=nginx --with-http_stub_status_module [root@ LNMP nginx-1.6.0]# make && make install
## 优化执行路径 ## [root@ LNMP ~]# ln -s /usr/local/nginx/sbin/* /usr/local/sbin/ [root@rhel6 ~]# nginx –t //测试是否安装正确 [root@rhel6 ~]# nginx // 启动服务 [root@rhel6 ~]# netstat -anpt |grep nginx //查看端口 tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 13440/nginx [root@rhel6 ~]# elinks http://192.168.1.226 测试网页
2.安装配置Mysql服务
yum -y install ncurses-devel ## 安装配置cmake ## [root@LNMP ~]# tar zxvf /opt/cmake-2.8.6.tar.gz -C /usr/src/ [root@LNMP ~]# cd /usr/src/cmake-2.8.6/ [root@LNMP cmake-2.8.6]# ./configure && gmake && gmake install ## 创建mysql运行用户 ## [root@LNMP ~]# useradd -M -s /sbin/nologin mysql ## 安装配置Mysql ## [root@LNMP ~]# tar zxvf /opt/mysql-5.5.22.tar.gz -C /usr/src/ [root@LNMP ~]# cd /usr/src/mysql-5.5.22/ [root@LNMP mysql-5.5.22]# cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_EXTRA_CHARSETS=all -DSYSCONFDIR=/etc [root@LNMP mysql-5.5.22]# make && make install
## 生成主配置文件 ## [root@LNMP ~]# cp /usr/local/mysql/support-files/my-medium.cnf /etc/my.cnf cp: overwrite `/etc/my.cnf‘? y ## 更改目录属主属组 ## [root@LNMP ~]# chown -R mysql.mysql /usr/local/mysql/ ## 初始化数据库 ## [root@LNMP ~]# /usr/local/mysql/scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data/ ## 添加环境变量 ## [root@LNMP ~]# echo "PATH=$PATH:/usr/local/mysql/bin" >> /etc/profile [root@LNMP ~]# source /etc/profile ## 将mysql添加到系统服务 ## [root@LNMP ~]# cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld [root@LNMP ~]# chmod 75 /etc/init.d/mysqld [root@LNMP ~]# chkconfig --add mysqld [root@LNMP ~]# chkconfig mysqld on ## 启动服务并查看监听信息 ## [root@LNMP ~]# service mysqld start Starting MySQL.... [ OK ] [root@LNMP ~]# netstat -anpt | grep ":3306" tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN 72223/mysqld ## 设置Mysql密码 ## [root@LNMP ~]# mysqladmin -u root password ‘aptech‘
3.安装配置PHP解析
yum -y install gd libxml2 libxml2-devel libjpeg-devel libpng-devel ## 解压安装PHP ## [root@LNMP ~]# tar zxvf /opt/php-5.3.28.tar.gz -C /usr/src/ [root@LNMP ~]# cd /usr/src/php-5.3.28/ [root@LNMP php-5.3.28]# ./configure --prefix=/usr/local/php --with-gd --with-zlib --with-mysql=/usr/local/mysql/ --with-config-file-path=/usr/local/php --enable-mbstring --enable-fpm --with-jpeg-dir=/usr/lib [root@LNMP php-5.3.28]# make && make install ## 优化php执行路径 ## [root@LNMP ~]# ln -s /usr/local/php/bin/* /usr/local/bin/ [root@LNMP ~]# ln -s /usr/local/php/sbin/* /usr/local/sbin/ 4.配置Nginx支持PHP ## 生成PHP主配置文件并进行修改 ## [root@LNMP ~]# cd /usr/local/php/etc/ [root@LNMP etc]# cp php-fpm.conf.default php-fpm.conf [root@LNMP etc]# useradd -M -s /sbin/nologin php
[root@LNMP etc]# vim php-fpm.conf pid = run/php-fpm.pid //确认pid文件位置 user = php //运行用户改为php group = php //运行组改为php pm.start_servers = 20 //启动时开启的进程数 pm.min_spare_servers = 5 //最小空闲进程数 pm.max_spare_servers = 35 //最大空闲进程数 pm.max_children = 50
## 修改Nginx服务脚本 ## 四、配置Nginx 支持PHP环境 1、修改Nginx服务脚本,以便在启动、停止Nginx服务时将php-fpm进程启动、停止 [root@rhel6 ~]# vim /etc/init.d/nginx (参考脚本nginx.initscript) #!/bin/bash # chkconfig: 35 99 20 # description: Nginx Service Control Script PROG="/usr/local/nginx/sbin/nginx" PROG_FPM="/usr/local/sbin/php-fpm" PIDF="/usr/local/nginx/logs/nginx.pid" PIDF_FPM="/usr/local/php5/var/run/php-fpm.pid" case "$1" in start) $PROG $PROG_FPM ;; stop) kill -s QUIT $(cat $PIDF) kill -s QUIT $(cat $PIDF_FPM) ;; restart) $0 stop $0 start ;; reload) kill -s HUP $(cat $PIDF) ;; *) echo "Usage: $0 {start|stop|restart|reload}" exit 1 esac exit 0 [root@rhel6 ~]# chmod a+x /etc/init.d/nginx
2、配置Nginx支持PHP解析
[root@rhel6 ~]# vim /usr/local/nginx/conf/nginx.conf 45 index index.html index.php; 65 location ~ \.php$ { 66 root /var/www/benet; 67 fastcgi_pass 127.0.0.1:9000; 68 fastcgi_index index.php; 70 include fastcgi.conf; 71 }
LNMP 测试: [root@rhel6 ~]# vim /var/www/benet/test.php <?php $link=mysql_connect(‘localhost‘,‘root‘,‘666666‘); //单引号 if($link) echo "恭喜你,数据库连接成功!"; mysql_close(); ?>
[root@rhel6 ~]# vim /var/www/benet/testphpinfo.php <?php phpinfo(); ?>
五、安装部署电影服务器
[root@rhel6 benet]# mysql -u root -p mysql> create database skyucdb; [root@rhel6 benet]# tar -jxvf SKYUC_3.2.2_Free_For_PHP5.3.tar.bz2 [root@rhel6 ~]# cp -ap SKYUC_3.2.2_Free_For_PHP5.3/wwwroot/* /var/www/benet/ [root@rhel6 wwwroot]# cd /var/www/benet/ [root@rhel6 benet]# chmod -R 777 data/ [root@rhel6 benet]# chmod -R 777 templates/ [root@rhel6 benet]# chmod -R 777 admincp/ [root@rhel6 benet]# chmod -R 777 upload/
LNMP
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。