LNMP环境搭建完全手册是一份详细的搭建LNMP环境的步骤,它包含了Linux、Nginx、MySQL、PHP的安装及配置,以及相关软件的升级。
LNMP环境搭建完全手册主要包含以下几个部分:
1. 安装Linux操作系统 2. 安装Nginx服务器 3. 安装MySQL数据库 4. 安装PHP脚本语言 5. 配置LNMP环境 6. 进行性能优化 7. 进行安全加固
1、安装Linux操作系统:在开始搭建LNMP之前,我们需要先在服务器上安装一个Linux操作系统,这里我们选用CentOS 7。在CentOS 7上安装LNMP时,我们需要使用yum命令来进行软件的安装及升级。
2、安装Nginx服务器:在CentOS 7上使用yum命令来进行nginx的安装及升级。在nginx中需要对站点进行相应的配置,例如站点根目录、虚拟主机、URL重写、SSL证书配置及日志分割。
3、安装MySQL数据库:MySQL是一个开放源代码的关联式数据库服务器。在CentOS 7上使用yum命令来进行MySQL的安装及升级。在MySQL中需要对数据库进行相应的配置,例如初始化数据库、创建用户及权限分配。
4、安装PHP脚本语言:PHP是一门开放原始代号的通用脚本语言。在CentOS 7上使用yum命令来进行PHP的安装及升级。在PHP中也要对php.ini文件进行相应的修改(例如时区信息、文件上传大小限制及session存储位子信息)。
5、配合LNMP 环境 : 首先将 Nginx 服务 和 PHP-FPM 服务 连 接 起 来 ( 需 要 配 置 Nginx 站 点 的 时 候 ) ; 然 后 是 配 置 PHP-FPM 本 账 来 连 接 MySQL 数 据 库 ( 需 要 使 由 PHP 连 接 MySQL 数 据 库 的 时 候 ) 。 p > < p > 6 、性能优化 : LNMP性能优化主要是通过对 Nginx 本 本 本 本 本 本 本 本 本 本 本 本 本 本 本 MySQL PHP - FPM 等 进 行 针 对 性 的 酒 驱 咱 ( 例 如 Nginx Gzip / Cache / Keepalive / FastCGI_Cache / SSL_Session_Cache / SSL_Session_Timeout / Limit_Conn / Limit_Rate / Limit_Req …… ; MySQL Query Cache / InnoDB Buffer Pool Size …… ; PHP - FPM pm . max _ children pm . start _ servers pm . min _ spare _ servers pm . max _ spare _ servers …… ) p > < p > 7 、 LNMP 加固 : LNMP加固主要是通过对 Linux Nginx MySQL PHP - FPM 等 进 行 针 对 性 的 驱 头 头 头 头 头 头 头 头 头 头 头 头 头 ( 例如 Linux iptables/selinux/firewalld/fail2ban/denyhosts/auditd……; Nginx deny/limit……; MySQL secure installation/grant……; PHP disable functions……) p >
和LAMP不同的是LNMP中的N指的是是Nginx(类似于Apache的一种web服务软件)其他都一样。目前这种环境应用的也是非常之多。Nginx设计的初衷是提供一种快速高效多并发的web服务软件。在静态页面的处理上Nginx的确胜Apache一筹,然而在动态页面的处理上Nginx并不比Apache有多少优势。但是,目前还是有很多爱好者对Nginx比较热衷,随着Nginx的技术逐渐成熟,它在web服务软件领域的地位越来越高。
cd /usr/local/src/
wget http://syslab.comsenz.com/downloads/linux/mysql-5.0.86-linux-i686-icc-glibc23.tar.gz
tar zxvf /usr/local/src/ mysql-5.0.86-linux-i686-icc-glibc23.tar.gz
mv mysql-5.0.86-linux-i686-ii-glibc23 /usr/local/mysql
useradd mysql
cd /usr/local/mysql
mkdir /data/mysql ; chown -R mysql:mysql /data/mysql
./scripts/mysql_install_db --user=mysql --datadir=/data/mysql
--user定义数据库的所属主,--datadir定义数据库安装到哪里,建议放到大空间的分区上,这个目录需要自行创建。
cp support-files/my-large.cnf /etc/my.cnf
cp support-files/mysql.server /etc/init.d/mysqld
chmod 755 /etc/init.d/mysqld
vim /etc/init.d/mysqld
需要修改的地方有datadir=/data/mysql(前面初始化数据库时定义的目录)
chkconfig --add mysqld
chkconfig mysqld on
service mysqld start
如果启动不了,请到/data/mysql/ 下查看错误日志,该日志格式为主机名.err。
这里要先声明一下,针对Nginx的php安装和针对apache的php安装是有区别的,因为Nginx中的php是以fastcgi的方式结合nginx的,可以理解为nginx代理了php的fastcgi,而apache是把php作为自己的模块来调用的。
useradd www
cd /usr/local/src/
wget http://syslab.comsenz.com/downloads/linux/php-5.2.10.tar.gz
wget http://syslab.comsenz.com/downloads/linux/php-5.2.10-fpm-0.5.13.diff.gz
下载的第二个包php-5.2.10-fpm-0.5.13.diff.gz是用来给php打补丁的,默认情况下,php是无法编译出fastcgi的。
tar zxvf php-5.2.10.tar.gz
gzip -cd php-5.2.10-fpm-0.5.13.diff.gz | patch -d php-5.2.10 -p1
cd php-5.2.10
./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc --with-mysql=/usr/local/mysql --with-mysql-sock=/tmp --with-libxml-dir --with-gd --with-jpeg-dir --with-png-dir --with-freetype-dir --with-iconv-dir --with-zlib-dir --with-mcrypt=/usr/local/libmcrypt --enable-soap --enable-gd-native-ttf --enable-ftp --enable-mbstring --enable-exif --enable-zend-multibyte --disable-ipv6 --enable-fastcgi --enable-fpm
make && make install
mkdir /usr/local/php/etc
cp php.ini-dist /usr/local/php/etc/php.ini
vim /usr/local/php/etc/php-fpm.conf
/tmp/php-fcgi.sockMySQL 是最流行的关系型数据库管理系统,由瑞典MySQLAB公司开发,目前属于Oracle公司。MySQL所使用的SQL语言是用于访问数据库的...
Linux内核最初只是由芬兰人李纳斯·托瓦兹(Linus Torvalds)在赫尔辛基大学上学时出于个人爱好而编写的。Linux是一套免费使用和...
PDOStatement::executePHP PDO 参考手册PDOStatement::execute — 执行一条预处理语句(PHP 5 = 5.1.0, PECL pdo = 0.1.0)说明语...
PHP array_combine() 函数 完整的 PHP Array 参考手册实例 通过合并两个数组来创建一个新数组,其中的一个数组元素为键名,另一...
PHP array_diff_uassoc() 函数 完整的 PHP Array 参考手册实例 比较两个数组的键名和键值(使用用户自定义函数比较键名),并返...