LNMP代表的就是:Linux系统下Nginx+MySQL+PHP这种网站服务器架构。
Linux是一类Unix计算机操作系统的统称,是目前最流行的免费操作系统。代表版本有:debian、centos、ubuntu、fedora、gentoo等。
Nginx是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP代理服务器。
Mysql是一个小型关系型数据库管理系统。
PHP是一种在服务器端执行的嵌入HTML文档的脚本语言。
这四种软件均为免费开源软件,组合到一起,成为一个免费、高效、扩展性强的网站服务系统。
下面就是LNMP的源码编译安装方法:
基础配置篇
1.关闭防火墙
service iptables stop
2.关闭selinux
setenforce 0
3.安装约定
源代码存放位置:/lnmp/src
编译安装位置: /usr/local/软件名
数据库文件存放路径:/data/mysql
4.安装编译工具及库文件
使用Centeros yum目录一键安装
yum install -y apr* autoconf automake gcc gcc-c++ cmake gtk+-devel libcurl-devel zlib-devel opnssl opensll-devel pcre pcre-devel gd kernel keyutils patch perl kernel-headers compat* cpp glibc libgomp libstdc++=devel keyutils-libs-devel libsepol-devel libselinux-devel krb5-devel libXpm* freetype-devel fontconfig fontconfig-devel libjpeg* libpng* php-gd gettext gettext-devel ncurses* libtool* libxml2 libxml2-devel patch policycoreutils bison
4.1 安装wget、vim
yum install wget yum install vim
5.按装rz/sz命令
wget tar zxvf lrzsz-0.12.20.tar.gz && cd lrzsz-0.12.20 ./configure && make && make install cd /usr/bin ln -s /usr/local/bin/lrz rz ln -s /usr/local/bin/lsz sz
软件安装篇
1、安装libmcrypt,PHP中的加密扩展库
curl -O tar -zxvf libmcrypt-2.5.8.tar.gz cd libmcrypt-2.5.8 ./configure make && make install
2、安装Nginx
useradd www -s /sbin/nologin 创建Nginx运行账户www,不允许直接登录系统 cd /lnmp/src curl -O tar -zxvf nginx-1.11.5.tar.gz cd nginx-1.11.5 ./configure --prefix=/usr/local/nginx --without-http_memcached_module --user=www --group=www --with-http_stub_status_module --with-http_ssl_module
注:此时配置可能报错./configure: error: SSL modules require the OpenSSL library. You can either do not enable the module,这是只需执行yum -y install openssl openssl-devel然后在配置
make && make install
设置Nginx开机启动
创建nginx文件并保存官方启动脚本
cp nginx /etc/rc.d/init.d/ 拷贝启动文件 chmod 775 /etc/rc.d/init.d/nginx chkconfig nginx on 设置开机启动 service nginx start 启动Nginx
3、安装MySQL
mkdir -p /data/www 创建数据文件保存目录 chown -R www:www /data/www/ 创建目录所有者 chown 777 /data/www -R 设置目录权限 useradd mysql -s /sbin/nologin 创建用户MySQL,不允许直接登录系统 mkdir -p /var/mysql/data 创建数据库存放目录 chown -R mysql:mysql /var/mysql/data 设置MySQL数据库目录权限 cd /lnmp/src/ curl -O tar zxvf mysql-5.5.28.tar.gz cd mysql-5.5.28 cmake \ -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \ -DMYSQL_UNIX_ADDR=/usr/local/mysql/mysqld.sock \ -DDEFAULT_CHARSET=utf8 \ -DDEFAULT_COLLATION=utf8_general_ci \ -DWITH_MYISM_STORAGE_ENGINE=1 \ -DWITH_INNOBASE_STORAGE_ENGINE=1 \ -DWITH_MEMORY_STORAGE_ENGINE=1 \ -DWITH_READLINE=1 -DENABLED_LOCAL_INFILE=1 \ -DMYSQL_DATADIR=/var/mysql/data \ -DMYSQL_USER=mysql -DMYSQL_TCP_PORT=3306 \ make && make install cd /usr/local/mysql cp ./support-files/my-huge.cnf /etc/my.cnf 复制配置文件 vim /etc/my.cnf 编辑配置文件,在【mysqld】部分增加 datadir = /var/mysql/data 添加MySQL数据库路径 ./scripts/mysql_install_db --user=mysql 生成MySQL系统数据库 cp ./support-files/mysql.server /etc/rc.d/init.d/mysqld 把MySQL加入系统启动 vim /etc/rc.d/init.d/mysqld basedir=/usr/local/mysql #MySQL程序安装路径 datadir=/var/mysql/data #MySQL数据库存放目录 chmod 755 /etc/init.d/mysqld 增加执行权限 chkconfig mysqld on 加入开机启动 chown -R mysql /usr/local/mysql 修改/usr/local/mysql 所属用户为MySQL service mysqld start 启动MySQL vim /etc/profile 把MySQL服务加入系统环境变量:在最后添加 export PATH=$PATH:/usr/local/mysql/bin source /etc/profile使配置立即生效 mkdir /var/lib/mysql创建目录 ln -s /tmp/mysql.sock /var/lib/mysql/mysql.sock添加软链接 mysql_secure_installation 设置MySQL密码 mysqladmin -u root -p password "123456" 直接修改密码
4、安装 PHP
cd /lnmp/src tar -jxvf php-7.0.7.tar.bz2 cd php-7.0.7 ./configure --prefix=/usr/local/php7 --with-config-file-path=/usr/local/php7/etc \ --with-mysqli=/usr/local/mysql/bin/mysql_config --enable-mysqlnd \ --with-mysql-sock=/usr/local/mysql/mysql.sock --with-gd --with-iconv --with-zlib \ --enable-xml --enable-bcmath --enable-shmop --enable-sysvsem --enable-inline-optimization \ --enable-mbregex --enable-fpm --enable-mbstring --enable-ftp --enable-gd-native-ttf \ --with-openssl --enable-pcntl --enable-sockets --with-xmlrpc --enable-zip --enable-soap \ --without-pear --with-gettext --enable-session --with-mcrypt --with-curl --with-jpeg-dir \ --with-freetype-dir --with-pdo-mysql=/usr/local/mysql/ \ make && make install cp php.ini-production /usr/local/php7/etc/php.ini复制PHP配置文件到安装目录 rm -rf /etc/php.ini删除系统自带配置文件 ln -s /usr/local/php7/etc/php.ini /etc/php.ini添加软链接 cp /usr/local/php7/etc/php-fpm.conf.default /usr/local/php7/etc/php-fpm.conf拷贝模板配置文件为php-fpm配置文件 修改:/usr/local/php7/etc/php-fpm.conf pid = run/php-fpm.pid取消前面的分号 cp /usr/local/php7/etc/php-fpm.d/www.conf.default /usr/local/php7/etc/php-fpm.d/ 修改:/usr/local/php7/etc/php-fpm.d/ user = www 设置php-fpm 运行账户为www group = www设置php-fpm 运行组为www 设置php-fpm开机启动 cp sapi/fpm/init.d.php-fpm /etc/rc.d/init.d/php-fpm拷贝php-fpm到启动目录 chmod +x /etc/rc.d/init.d/php-fpm添加执行权限 chkconfig php-fpm on设置开机启动 service php-fpm start启动php-fpm
5、配置nginx支持PHP
修改配置文件:/usr/local/nginx/conf/nginx.conf
1、去掉location ~ \.php$ {}等几行前的#
2、将:fastcgi_param SCRIPT_FILENSAME /scripts$fastcgi_script_nam;
改为:fastcgi_param SCRIPT_FILENSAME $document_root$fastcgi_script_nam;
3.重启nginx service nginx restart
6、此时访问超时的话
1.关闭防火墙
service iptables stop
2.关闭selinux
setenforce 0
免责声明:本文来源于,由网友提供或网络搜集,仅供个人研究、交流学习使用,不涉及商业盈利目的。如有版权问题,请联系本站管理员予以更改或删除。优知网会定期发布程序开发相关趋势文章,包括 PHP、 Linux、 Mysql 等领域,敬请关注!最后大家可以扫描下方的赞赏码支持我,感谢大家!