Linuxサーバによるlnmp環境の構築

20139 ワード

1.nginxのインストール


1).更新yum

yum update

2).依存パッケージのインストール


(1)makeのインストール

yum -y install gcc automake autoconf libtool make

(2)g++を取り付ける

yum install gcc gcc-c++

(3)PCREライブラリのインストール

yum install pcre pcre-devel

(4)zlibライブラリ

yum install zlib zlib-devel

(5)OpenSSL

yum install openssl openssl-devel

3).nginxの最新版をダウンロードします


http://nginx.org/en/download.html
wget http://nginx.org/download/nginx-1.16.1.tar.gz

解凍

tar -xzf nginx-1.16.1.tar.gz

nginx-1.16.1に入ります

cd nginx-1.16.1

構成コマンドの実行

./configure

インストールNginxの実行

make && make install

nginxフォルダの下に入ってnginxを開く

cd /usr/local/nginx/sbin

./nginx  //  nginx  

nginx起動


2.phpのインストール


1).依存パッケージのインストール

yum install -y gcc gcc-c++  make zlib zlib-devel pcre pcre-devel  libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel krb5 krb5-devel openssl openssl-devel openldap openldap-devel nss_ldap openldap-clients openldap-servers

2).phpのインストール

wget https://www.php.net/distributions/php-7.4.3.tar.gz

解凍

cd php-7.4.3

phpの構成

./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php --enable-mbstring --enable-ftp --with-gd --with-jpeg-dir=/usr --with-png-dir=/usr --with-mysql=mysqlnd --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --without-pear  --disable-phar --enable-sockets --with-freetype-dir=/usr --with-zlib --with-libxml-dir=/usr --with-xmlrpc --enable-zip --enable-fpm --enable-xml --enable-sockets --with-gd --with-zlib --with-iconv --enable-zip --with-freetype-dir=/usr/lib/ --enable-soap --enable-pcntl --enable-cli --with-curl

インストール

make && make install

3).php.ini構成


本番環境のphpプロファイルのコピー

cp php.ini-production /usr/local/php/etc/php.ini

システム付属プロファイルの削除

rm -rf /etc/php.ini

ソフトリンクの追加

ln -s /usr/local/php/etc/php.ini /etc/php.ini

php-fpmプロファイルのコピー

cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf

php-fpmファイルの変更

pid = run/php-fpm.pid //       

4).起動の設定

cp /usr/local/php/etc/php-fpm.d/www.conf.default /usr/local/php/etc/php-fpm.d/www.conf  #  php-fpm     
chmod +x /etc/rc.d/init.d/php-fpm  #      
chkconfig php-fpm on                                                                    #      
service php-fpm start                                                                   #  php-fpm

5).nginx構成の設定

vi /usr/local/nginx/conf/nginx.conf  #  nginx  php

        location ~ \.php$ {
            root           html;
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
            include        fastcgi_params;
        }

cd /usr/local/nginx/sbin
./nginx -s reload                   #    nginx     

3.mysqlのインストール


1).mysqlをダウンロード

wget https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.19-1.el7.x86_64.rpm-bundle.tar

2)解凍

tar -xvf mysql-8.0.19-1.el7.x86_64.rpm-bundle.tar

3).順次インストール

(1)rpm -ivh mysql-community-common-8.0.19-1.el7.x86_64.rpm
(2)rpm -ivh  mysql-community-libs-8.0.19-1.el7.x86_64.rpm
(3)rpm -ivh  mysql-community-client-8.0.19-1.el7.x86_64.rpm 
(4)rpm -ivh  mysql-community-server-8.0.19-1.el7.x86_64.rpm
(5)rpm -ivh  mysql-community-devel-8.0.19-1.el7.x86_64.rpm

#   
#warning: mysql-community-common-8.0.19-1.el7.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY
#     --force --nodeps

4).構成の初期化

mkdir -p /data/www                      #           

useradd mysql -s /sbin/nologin          #    mysql,           
mkdir -p /var/mysql/data                #  MySQL           
chown -R mysql:mysql / var/mysql/data   #  MySQL       

vi /etc/my.cnf                          #      
datadir = /var/mysql/data       

mysqld --initialize --user=mysql       #  mysql      

cat /var/log/mysqlld.log               #  root       
jv0E:r;5rB/Z

systemctl start mysqld                 #  mysql  
systemctl status mysqld                #      mysql  (running)
mysql -uroot -p                        #     
alter user 'root'@'localhost'  identified by  '134679';             #    
show databases;                        #