ホームページ  >  記事  >  php教程  >  CentOS 7.2mini 版で php7.0.10+MySQL5.7.14+Nginx1.10.1 をコンパイルしてインストールします。

CentOS 7.2mini 版で php7.0.10+MySQL5.7.14+Nginx1.10.1 をコンパイルしてインストールします。

WBOY
WBOYオリジナル
2016-09-02 08:42:561919ブラウズ

1.インストール前の準備

1. おいしいアップデート#システムをアップデート

2. yum install gcc gcc-c++ autoconf automake cmake bison m4 libxml2 libxml2-devel libcurl-devel libjpeg-devel libpng-devel libicu-devel    #安装php、MySQL、Nngix所依赖的包

3. 次のパッケージをダウンロードします。#私はすべてのソースファイルをルートディレクトリにダウンロードしました。ソースファイルの保存ディレクトリは読者が自分で変更できます

3.1 libmcrypt-2.5.8.tar.gz

3.2 mcrypt-2.6.8.tar.gz

3.3 mhash-0.9.9.9.tar.gz

3.4 zlib-1.2.8.tar.gz

次のように解凍してインストールします:

#tar -zvxf libmcrypt-2.5.8.tar.gz

#cd libmcrypt-2.5.8

#./configure

#make && make insatll

4. ソフトウェアをインストールするときに、依存パッケージがインストールされていないことを確認するメッセージが表示された場合は、yum install * -y (* は関連パッケージを示します) を実行できます。


2. Nginxをコンパイルしてインストールします

1. 公式 Web サイト http://nginx.org/en/download.html にアクセスして、nginx-1.10.1.tar.gz の最も安定したバージョンをダウンロードします

2. コンパイル手順は次のとおりです

1. winSCP経由でnginx-1.10.1.tar.gzを/rootディレクトリにアップロードします

1.1 groupadd -r nginx ââ з by winSCP #ログイン権限なしで新規作成 nginx user
1.3 id nginx
2.tar -zvxf nginx-1.10.1.tar.gz

3. cd nginx-1.10.1

4. ./configure --help を通じてコン​​パイル設定パラメータを表示するか、http://nginx.org/en/docs/configure.html を参照してください。次のパラメータは 1 行で記述する必要があります

./configure。

--prefix =/usr/local/nginx

--modules-path=/usr/local/nginx/modules
--with-http_ssl_module
--pid-path=/usr/local/nginx/nginx.pid
--user=nginx
--group=nginx

5. make && make install #コンパイルしてインストール

6. nginx を起動します

6.1 cd /usr/local/nginx

6.2 sbin/nginx #始めて、nginx 関連の操作コマンドを表示します


7. /usr/lib/systemd/system ディレクトリに新しい nginx.service ファイルを作成し、systemctl stop|start|reload nginx.service で nginx を操作できるようにします。 https://www も参照できます。 nginx.com/resources/wiki/start/topics/examples/systemd/ の内容は次のとおりです:
[ユニット]

Description=NGINX HTTP およびリバース プロキシ サーバー

After=syslog.target network.target remote-fs。ターゲット NSS-lookup.target

[サービス]
Type=forking

PIDFile=/usr/local/nginx/nginx.pid

ExecStartPre=/usr/local/nginx/sbin/nginx -t
ExecStart=/usr/local/nginx/sbin/nginx
ExecReload=/usr/local/nginx/sbin/nginx -s reload
ExecStop=/usr/local/nginx/sbin/nginx -s stop
PrivateTmp=true

[インストール]
WantedBy=multi-user.target



3. MySQL をコンパイルしてインストールします

1. 公式 Web サイト http://dev.mysql.com/Downloads/MySQL-5.7/mysql-boost-5.7.14.tar.gz にアクセスして、ブースト付きバージョン 5.7.14 をダウンロードします

2. コンパイル手順は次のとおりです

1. winSCPを使用してmysql-boost-5.7.14.tar.gzを/rootディレクトリにアップロードします

2. groupadd mysql

3. useradd -r -g mysql -s /bin/false mysql

4. cmake を使用して mysql をコンパイルします。関連するパラメーターについては、https://dev.mysql.com/doc/refman/5.7/en/source-configuration-options.html を参照してください。以下のパラメーターを 1 つに記述する必要があります。 line

cmake

-DCMAKE_INSTALL_PREFIX= /usr/local/mysql

-DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock
-DSYSCONFDIR=/usr/local/mysql/etc
-DSYSTEMD_PID_DIR=/usr/local/my SQL
-DDEFAULT_CHARSET =utf8
-DDEFAULT_COLLATION =utf8_general_ci
-DWITH_INNOBASE_STORAGE_ENGINE=1
-DWITH_ARCHIVE_STORAGE_ENGINE=1
-DWITH_BLACKHOLE_STORAGE_ENGINE=1
-DWITH_PERFSCHEMA_ STORAGE_ENGINE=1
-DMY SQL_DATADIR=/usr/local/mysql/data
-DWITH_BOOST=boost
-DWITH_SYSTEMD =1

5. make && make install

6. mysqlの設定とデータベースの初期化
6.1 cd /usr/local/mysql 6.2 chown -R mysql . 6.3 chgrp -R mysql . 6. 6.4 cp /usr/local/ mysql/support-files/mysql.server /etc /init.d/mysqld .cnf #configure my.cnf
6.5.1 my.cnfファイルの[mysqld]に以下の内容をコピー user = mysql
basedir = /usr/local/mysql
datadir = /usr / local/mysql/data
port = 3306
server_id = /usr/local/mysql/mysqld.pid
socket = /usr/local/mysql/mysql.sock
6.5 chkconfig mysqld on 6.6 bin/mysqldイリアライズ- insecure --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data #データベースを初期化します
6.7 bin/mysqld --user=mysql & #mysql を開始します (if) mysqld を root として実行する方法については、マニュアルの「セキュリティ」セクションをお読みください。my.cnf に user=root を追加するだけです。これは、root ユーザーとして開始することを意味します

7. root ユーザーのログインパスワードを変更し、root ユーザーがリモートでログインできるようにします
7.1 mysql -u root --skip-password
7.2 ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';
7.3 許可するroot ユーザーでリモートログインする
7.3.1 use mysql;

7.3.2 update user set host='%' where user='root' and host='localhost'; #disable)

7.3.3 フラッシュ権限;
7.3 .4サービスmysqldの再起動


8. サービス mysqld start|stop が MySQL サーバー PID ファイルが見つからない、または MySQL サーバー (/usr/local/mysql/bin/mysqld_safe) が見つかりませんでしたと報告する問題を解決します。このファイルを読むことで解決します
8.1 chmod 777 /usr/local/mysql #mysqld.pid ファイルを /usr/local/mysql ディレクトリに保存するように設定したため、書き込み権限があることを確認してください
8.2 /etc を変更しますwinSCP を介した /init.d/mysqld ファイル
8.2 .1 basedir=/usr/local/mysql #手動で指定
8.2.2 datadir=/usr/local/mysql/data #手動で指定

8.2.3 mysqld_pid_file_path=/usr/ local/mysql/mysqld.pid #手動で指定

8.2.4 このファイル内の mysqld_safe を含むコメントされていない文字をすべて mysqld
に置き換えます





4. phpをコンパイルしてインストールします

1. 公式 Web サイト http://php.net/downloads.php にアクセスして、バージョン php7.0.10 をダウンロードします


2.コンパイル手順は以下の通りです

1. winSCPを使ってphp-7.0.10.tar.gzを/rootディレクトリにアップロードします

2. tar -zvxf php-7.0.10.tar.gz #Unzip

3. コンパイル php パラメータを設定します。 ./configure --help コマンドを使用すると、すべてのコンパイル設定項目を表示できます

./configure

--prefix=/usr/local/php。

--exec- prefix=/usr/local/php

--datadir=/usr/local/php

--with-config-file-path=/usr/local/php/etc

--with-mysqli= mysqlnd

--with -pdo-mysql=mysqlnd
--with-fpm-user=nginx
--with-fpm-group=nginx
--with-gd
--with-iconv
--enable-mbstring
--enable-fpm
--enable-mysqlnd

4. make && make install #コンパイルしてインストール

5. cd /usr/local/php #コンパイルディレクトリに入る

6. 関連する設定ファイルを修正します
6.1 cp /usr/local/php/etc/php.ini.default /usr/local/php/etc/php.ini 6.1 cp /usr/local/php/etc/php。 ini.default /usr/local/php/etc/php.ini プロジェクトのニーズに応じて、php.iniの関連設定を自分で変更できます 設定nginxはphpリファレンス http://php.net/manual/zh/ をサポートしています。 install.unix.nginx.php

6.2 cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc /php-fpm.conf #[global]の下のpidの前のものを削除;

6.3 cp /usr/local/php/etc/php-fpm.d/www.conf.default /usr/local/php/etc/php -fpm.d/www.conf #行でユーザーとグループを大まかに変更します23 と 24、例: ユーザー = nginx、グループ = nginx

7. chmod 777 /usr/local/php/var/run #デフォルトのPIDファイルはディレクトリ/usr/local/php/var/runに書かれているので、ディレクトリのパーミッションを変更します

8. sbin/php-fpm #phpを起動すると、sbin/php-fpm -hで関連する操作コマンド一覧が表示されます

9. systemctl stop|start|reload php-fpm.service で php-fpm を操作できるように、/usr/lib/systemd/system ディレクトリに新しい php-fpm.service ファイルを作成します。 :
[ユニット]
Description=PHP FastCGI Process Manager
After=syslog.target network.target
Before=nginx.service

[サービス]
Type=forking
PIDFile=/usr/local/php/var/run/php-fpm.pid
ExecStart=/usr/local/php/sbin/php-fpm
ExecStop=/bin/kill - QUIT `cat /usr/local/php/var/run/php-fpm.pid`
ExecReload=/bin/kill -USR2 `cat /usr/local/php/var/run/php-fpm.pid`
PrivateTmp =本当

[インストール]
WantedBy=multi-user.target


5. Redis と phpredis 拡張機能をインストールします

1. winSCP を使用して redis-3.0.0.tar.gz を /root ディレクトリにアップロードします

2. tar -zvxf redis-3.0.0.tar.gz -C /usr/local #/usr/local ディレクトリに解凍します

3. yum install tcl -y #redis-test はこのパッケージに依存します

4. cd /usr/local/redis-3.0.0

5. chmod 777 . #現在のディレクトリは /usr/local/redis-3.0.0 に割り当てられました。

6. 作成&&インストール

7. vi /usr/local/redis-3.0.0/redis.conf #redis 設定ファイルを変更します

7.1 デーモン化します
7.2 pidfile /usr/local/redis/redis.pid

8. #redis を開始
src/redis-cli shutdown #redis を閉じる
src/redis-server --help #関連するヘルプコマンドを表示

9. systemctl stop|start redis.service を通じて redis を操作できるように、/usr/lib/systemd/system ディレクトリに新しい redis.service ファイルを作成します。 内容は次のとおりです:

[ユニット]
説明= Redis 3.0.0 サービス
After=syslog.target

[サービス]

Type=forking
PIDFile=/usr/local/redis/redis.pid
ExecStartPre=/usr/local/redis/src/redis-server /usr/local/redis/redis.conf
ExecStart=/ usr/local/redis/src/redis-server /usr/local/redis/redis.conf
ExecStop=/usr/local/redis/src/redis-cli shutdown
PrivateTmp=true

[インストール]

WantedBy=multi-user.target

10. phpredis 拡張機能をインストールします

10.1 winSCP を使用して phpredis-3.0.0.tar.gz を /root ディレクトリにアップロードします
10.2 tar -zvxf phpredis-3.0.0.tar.gz -C /usr/local #Extract to / usr /localディレクトリ
10.3 cd /usr/local/phpredis-3.0.0
10.4 /usr/local/php/bin/phpize
10.5 ./configure --with-php-config=/usr/local/php/bin /php-config
10.6 make && make install
10.7 php.iniファイルにextension=redis.so
を追加 10.8 Nginx/Apache
を再起動 10.9 php-fpm
を再起動


6. これまでのところ、私の VirturBox では CentOS7.2 で LNMP 環境が正常にセットアップされています。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。