欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

CentOS系列之LNPM环境搭建

程序员文章站 2022-03-01 19:33:39
...

Centos6.9系统配置LNMP环境并安装落larvael54

1、         更换yum源

进入网站跟着步骤走  网址( http://mirrors.163.com/.help/centos.html)

2、         安装nginx

创建文件  vim /etc/yum.repos.d/nginx.repo

# 粘贴下列代码到nginx.repo 
[nginx] 

name=nginx repo

baseurl=http://nginx.org/packages/centos/6/$basearch/ 

gpgcheck=0 

enabled=1

 

开始安装 

sudo yum install –y nginx

初始化nginx

service nginx restart

3、         安装Mysql

下载发行包  网址(http://dev.mysql.com/downloads/repo/yum/)

释放包 sudo rpm -Uvh mysql57-community-release-el6-11.noarch.rpm

开始安装   sudo yum install mysql-community-server

初始化Mysql服务  sudo service mysqld restart

获取初始化密码  sudo grep 'temporary password' /var/log/mysqld.log

登陆  mysql –uroot –p

修改密码  set password=PASSWORD("新密码")  (必须包含大写字母 小写字母 数字 符号)

4、         安装php

安装杂项

yum install -y epel-release

yum makecache fast

yum install -y gcc gcc-c++ perl libpng-devel libjpeg-devel libwebp-devel libXpm-devel libtiff-devel libxml2-devel libcurl-devel libmcrypt-devel fontconfig-devel freetype-devel libzip-devel bzip2-devel gmp-devel readline-devel recode-devel GeoIP-devel bison re2c

创建PHP管理用户

groupadd www

useradd www -g www

安装必要的包

 

 

安装libiconv

下载并解压 libiconv

cd /tmp

curl -O --retry 3 https://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.15.tar.gz

tar -zxf libiconv-1.15.tar.gz

 

# 编译

cd libiconv-1.15

./configure --prefix=/usr/local/libiconv

make -j && make install

 

# 增加到动态链接库:

echo '/usr/local/libiconv/lib' >> /etc/ld.so.conf.d/custom-libs.conf

ldconfig

 

安装pcre

# 下载并解压 pcre

cd /tmp

curl -O --retry 3 https://ftp.pcre.org/pub/pcre/pcre-8.40.tar.gz

tar -zxf pcre-8.40.tar.gz

 

# 编译

cd pcre-8.40

./configure --prefix=/usr/local/pcre --enable-utf8 --enable-unicode-properties

make -j && make install

 

# 增加到动态链接库

echo '/usr/local/pcre/lib' >> /etc/ld.so.conf.d/custom-libs.conf

ldconfig

 

安装zlib

# 下载并解压 zlib

cd /tmp

curl -O --retry 3 http://zlib.net/zlib-1.2.11.tar.gz

tar -zxf zlib-1.2.11.tar.gz

 

# 编译

cd zlib-1.2.11

./configure --prefix=/usr/local/zlib

make -j && make install

 

# 增加到动态链接库

echo '/usr/local/zlib/lib' >> /etc/ld.so.conf.d/custom-libs.conf

ldconfig

 

 

安装libgd

# 下载并解压 libgd

cd /tmp

curl -O --retry 3 -L https://github.com/libgd/libgd/releases/download/gd-2.2.4/libgd-2.2.4.tar.gz

tar -zxf libgd-2.2.4.tar.gz

 

# 编译

cd libgd-2.2.4

./configure \

  --prefix=/usr/local/libgd \

  --with-libiconv-prefix=/usr/local/libiconv \

  --with-zlib=/usr/local/zlib \

  --with-jpeg=/usr \

  --with-png=/usr \

  --with-webp=/usr \

  --with-xpm=/usr \

  --with-freetype=/usr \

  --with-fontconfig=/usr \

  --with-tiff=/usr

make -j && make install

 

# 增加到动态链接库

echo '/usr/local/libgd/lib' >> /etc/ld.so.conf.d/custom-libs.conf

ldconfig

 

 

安装openssl

# 下载并解压 openssl

cd /tmp

curl -O --retry 3 https://www.openssl.org/source/openssl-1.0.2k.tar.gz

tar -zxf openssl-1.0.2k.tar.gz

 

# 编译

cd openssl-1.0.2k

./config --prefix=/usr/local/openssl -fPIC

make -j && make install

 

安装php

# 下载并解压 php

cd /tmp

curl -O --retry 3 http://cn.php.net/distributions/php-7.1.27.tar.gz

tar -zxf php-5.6.32.tar.gz

 

# 编译

cd php-5.6.32

./configure \

  --prefix=/usr/local/php71 \

  --sysconfdir=/etc/php71 \

  --with-config-file-path=/etc/php71 \

  --with-config-file-scan-dir=/etc/php71/php-fpm.d \

  --with-fpm-user=www \

  --with-fpm-group=www \

  --with-curl \

  --with-mhash \

  --with-mcrypt \

  --with-gd \

  --with-gmp \

  --with-bz2 \

  --with-recode \

  --with-readline \

  --with-gettext \

  --with-mysqli=mysqlnd \

  --with-pdo-mysql=mysqlnd \

  --with-openssl=/usr/local/openssl \

  --with-openssl-dir=/usr/local/openssl \

  --with-pcre-regex=/usr/local/pcre \

  --with-pcre-dir=/usr/local/pcre \

  --with-zlib=/usr/local/zlib \

  --with-zlib-dir=/usr/local/zlib \

  --with-iconv-dir=/usr/local/libiconv \

  --with-libxml-dir=/usr \

  --with-libzip=/usr \

  --with-gd=/usr/local/libgd \

  --with-jpeg-dir=/usr \

  --with-png-dir=/usr \

   --with-xpm-dir=/usr \

  --with-freetype-dir=/usr \

  --enable-fpm \

  --enable-ftp \

  --enable-gd-native-ttf \

  --enable-gd-jis-conv \

  --enable-calendar \

  --enable-exif \

  --enable-pcntl \

  --enable-soap \

  --enable-shmop \

  --enable-sysvmsg \

  --enable-sysvsem \

  --enable-sysvshm \

  --enable-wddx \

  --enable-inline-optimization \

  --enable-bcmath \

  --enable-mbstring \

  --enable-mbregex \

  --enable-re2c-cgoto \

  --enable-xml \

  --enable-mysqlnd \

  --enable-embedded-mysqli \

  --enable-opcache \

             --enable-sockets\

  --disable-debug

make -j && make install

 

添加软连接

ln -sf /usr/local/php71/bin/php /usr/bin/php

ln -sf /usr/local/php71/bin/phpize /usr/bin/phpize

ln -sf /usr/local/php71/sbin/php-fpm /usr/bin/php-fpm

配置PHP-fpm

cp /www/php-7.1.15/php.ini-development /etc/php71/php.ini

cp /usr/local/php71/sbin/php-fpm /usr/bin/php-fpm

cp /etc/php71/php-fpm.conf.default /etc/php56/php-fpm.conf

 

配置Nginx

cp /etc/nginx/conf.d/default.conf /etc/nginx/conf.d/default.conf.bak

vim /etc/nginx/conf.d/default.conf

将文件代码替换为

 

 

server

{

    listen 80;

    server_name 127.0.0.1; #server_name end

    index index.html index.htm index.php; #index end

    charset utf-8;

    if ($host ~* ^([^\.]+)\.([^\.]+\.[^\.]+)$) {

     set $subdomain $1;

     set $domain $2;

    }

    # set $subdomain '/';

    root  /home/wwwroot/index/$subdomain/;

    #include rewrite/nomal.conf; #rewrite end

 

    location ~ .*\.php$

    {

            fastcgi_pass   127.0.0.1:9000;

            fastcgi_index  index.php;

            fastcgi_split_path_info  ^((?U).+\.php)(/?.+)$;

            fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;

            fastcgi_param  PATH_INFO  $fastcgi_path_info;

            fastcgi_param  PATH_TRANSLATED  $document_root$fastcgi_path_info;

            include        fastcgi_params;

    }

 

    location ~ .*\.(gif|jpg|jpeg|png|bmp|swf|flv|mp3|wma)$

    {

        expires      30d;

    }

 

    location ~ .*\.(js|css)$

    {

        expires      12h;

    }

 

    location ~* /templates(/.*)\.(bak|html|htm|ini|old|php|tpl)$ {

        allow 127.0.0.1;

        deny all;

    }

 

    location ~* \.(ftpquota|htaccess|htpasswd|asa|mdb)?$ {

        deny all;

    }

 

    location ~ /node_modules/ {

        deny all;

    }

  location / {

    try_files $uri $uri/ /index.php?$query_string;

   }

    access_log /var/log/nginx/index-access.log main; #access_log end

    error_log /var/log/nginx/index-error.log crit; #error_log end

}

调试

service mysqld restart

service nginx restart

php-fpm

 

 

在/home目录下建立/wwwroot/index/目录

 

修改文件夹权限命令  chown –R 777  index

利用Xftp将larvael54项目上传至该目录  然后浏览器访问   OK

 

 

 

注释:

启动php出现如下错误

[23-Mar-2018 21:18:01] WARNING: Nothing matches the include pattern '/etc/php71/php-fpm.d/*.conf' from /etc/php71/php-fpm.conf at line 125.

[23-Mar-2018 21:18:01] ERROR: No pool defined. at least one pool section must be specified in config file

[23-Mar-2018 21:18:01] ERROR: failed to post process the configuration

[23-Mar-2018 21:18:01] ERROR: FPM initialization failed

 

解决方法:

cd /etc/php71/php-fpm.d/

cp www.conf.default www.conf

php-fpm

 

 

在centos7中

重启nginx命令systemctl  restart nginx

不重启直接加载配置命令:systemctl reload nginx

重启mysql命令 systemctl restart mysql