博客列表 >LNMP环境搭建

LNMP环境搭建

学习使我快乐
学习使我快乐原创
2018年01月19日 09:42:07844浏览

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 等领域,敬请关注!最后大家可以扫描下方的赞赏码支持我,感谢大家!

微信赞赏小.png

上一条:PHP $_SERVER详解下一条:MySQL主从服务
声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议