ホームページ  >  記事  >  バックエンド開発  >  CentOS6.5にNginx1.70 +PHP5.59+MySQL5.6.16をコンパイルしてインストールします。

CentOS6.5にNginx1.70 +PHP5.59+MySQL5.6.16をコンパイルしてインストールします。

WBOY
WBOYオリジナル
2016-06-23 13:39:51854ブラウズ

ソフトウェア ツールキットをダウンロードします:

1. nginx をダウンロードします

http://nginx.org/download/nginx-1.7.0.tar.gz

2. pcre をダウンロードします (nginx 擬似静的をサポートします)

http://jaist.dl.sourceforge.net/project/pcre/pcre/8.35/pcre-8.35.tar.gz

4. MySQL5.6.16 をダウンロードします

http://mirrors.sohu.com/mysql/MySQL -5.6/mysql-5.6.16.tar.gz

5. php-5.5.9

をダウンロードします

http://mirrors.sohu.com/php/php-5.5.9.tar.gz

6. ダウンロードします。 cmake (MySQL コンパイル ツール)

http://www.cmake.org/files/v2.8/cmake-2.8.12.2.tar.gz

7. libmcrypt (PHPlibmcrypt モジュール) をダウンロードします

http://nchc .dl.sourceforge.net/project/mcrypt/Libmcrypt/2.5.8/libmcrypt-2.5.8.tar.gz

規則:


上記のすべてのソフトウェア パッケージを新しく作成した /data/soft ディレクトリにアップロードします

">" はコマンド ライン プロンプトを表します

コンパイル ツールとライブラリ ファイルをインストールします:

>yum install make apr* autoconf automake bzip2 bzip2-develcurlcurl-devel gcc gcc-c++ gcc- g77 e2fsprogs e2fsprogs-devel zlib* zlib-devel openssl openssl-devel pcre-devel gd gd-devel カーネル keyutils patch perl kernel-headers compat* mpfr cpp glibc libgomp libstdc++-devel ppl cloog-ppl keyutils-libs-devel libcom_err-devel libsepol -devel libselinux-devel krb5-devel zlib-devel libXpm* freetype freetype-devel libpng* libpng10 libpng10-devel libpng-devel php-common php-gd ncurses* ncurses-devel libtool* libtool-libs libxml2-devel patch glibc glibc-devel Glib2 Glib2-Devel KRB5 KRB5-Devel Libevent Libevent-Devel Libidn Libidn-Devel NSS_LDAP OpenLDAP-CLIENTS OpenLDAP-Servers SL Openssl-Devel PSpect-Devel NET-SNMP* NET-SNMP-DEVEL -Y


cmake をインストールします

>cd /data/soft && tar zxvf cmake-2.8.12.2.tar.gz

>cd cmake-2.8.12.2


>./configure && make && make install

MySQL をインストールします

>groupadd mysql #mysql グループを追加します

>useradd -g mysql mysql -s /bin/false #MySQL ユーザーを作成して mysql グループに参加することはできません。システムに直接ログインします

>mkdir -p /data/mysqldata #MySQL データベースストレージディレクトリを作成します

>chown -R mysql:mysql /data/mysqldata #MySQL データベースディレクトリの権限を設定します

>mkdir -p /usr/local/mysql #MySQL インストールディレクトリの作成

>cd /data/soft

>tar zxvf mysql-5.6.16.tar.gz

>cd mysql-5.6.16

>/ usr/local/bin/cmake - DCMAKE_INSTALL_PREFIX=/usr/local/mysql

-DMYSQL_UNIX_ADDR=/tmp/mysql.sock

-DDEFAULT_CHARSET=utf8

-DDEFAULT_COLLATION=utf8_general_ci

-DWITH_EXTRA_ CHARSETS:STRING=utf8,gbk

-DWITH_MYISAM_STORAGE_ENGINE=1

-DWITH_INNOBASE_STORAGE_ENGINE=1

-DWITH_MEMORY_STORAGE_ENGINE=1

-DENABLED_LOCAL_IN FILE=1

-DMYSQL_DATADIR=/data/mysqldata

-DMYSQL_USER=mysql

-DMYSQL_TCP_PORT= 3306

-DSYSCONFDIR=/etc

-DINSTALL_SHAREDIR=share

>make && make install

コンパイルパラメータの詳細なリファレンス: http://dev.mysql.com/doc/refman/5.6/en/source-configuration -options.html


MySQL の設定

>mkdir /tmp #キャッシュとして使用

>chown -R mysql:mysql /tmp/ #ディレクトリは承認されている必要があり、そうでない場合は書き込むことができません

>cp ./support-files/ my-default.cnf /etc/my.cnf #設定ファイルをコピーします (注: デフォルトで /etc ディレクトリに my.cnf がある場合は、それを直接上書きしてください)

>vi /etc/my.cnf #設定ファイルを編集し、[mysqld] セクションに次の行を追加します

datadir = /data/mysqldata #MySQL データベース パスを追加します

:wq #保存して終了します

!

>cd /usr/local/mysql

>./scripts/mysql_install_db --user=mysql --datadir=/data/mysqldata/ #mysql システム データベースを生成

>cp ./support-files/mysql .server /etc/rc.d/init.d/mysql #Mysql をシステムに追加 起動

>chmod 755 /etc/init.d/mysql #実行権限を追加

>chkconfig mysql on #スタートアップを追加

>vi /etc/rc.d/init.d/mysql #編集

basedir = /usr/local/mysql #MySQLプログラムのインストールパス

datadir = /data/mysqldata #MySQlデータベース格納ディレクトリ

:wq ! #保存して終了

>service mysql start #Start

>vi / etc/profile #mysql サービスをシステム環境変数に追加します: 最後に次の行を追加します

export PATH=$PATH:/ usr/local/mysql/bin

:wq! #Save and exit

次の行は myslq を追加します。ライブラリ ファイルはシステムのデフォルトの場所にリンクされるため、mysql のライブラリ ファイル アドレスを指定する必要はありません。 PHPなどのソフトウェアをコンパイルするとき。

>ln -s /usr/local/mysql/include/mysql /usr/include/mysql

>reboot #システムを再起動する必要があります。システムが再起動するのを待ち、ターミナルコマンドラインで操作を続行します

>mysql_secure_installation #Mysqlパスワードを設定します

プロンプトに従ってYを押し、Enterを押します

次にパスワードを2回入力します

設定が完了するまで Y を押し続けます

または、パスワードを直接変更します /usr/local/mysql/bin/mysqladmin -u root -p password "123456" #パスワードの変更

>service mysql restart #再起動

これで、mysql のインストールは完了です!


pcre をインストールします

>cd /data/soft

>mkdir /usr/local/pcre #インストールディレクトリを作成します

>tar zxvf pcre-8.35.tar.gz

& gt; cd pcre-8.35

>./configure --prefix=/usr/local/pcre #Configure

>make && make install


nginx をインストール

>cd /data/ Soft

>groupadd webuser #webuser グループを追加します

>useradd -g webuser webuser -s /bin/false #nginx 実行アカウント webuser を作成し、webuser グループに追加します。Webuser ユーザーは、システムを直接

>tar zxvf nginx -1.7.0.tar.gz

>cd nginx-1.7.0

>./configure --prefix=/usr/local/nginx --without-http_memcached_module - -user=webuser --group=webuser --with-http_stub_status_module --with-openssl=/usr/ --with-pcre=/data/soft/pcre-8.35

注: --with-pcre=/data/ pcre-8.35 は、インストール パスではなくソース パッケージの解凍パスを指します。そうでない場合は、エラーが報告されます

>make && make install

>/usr/local/nginx/sbin/nginx #Start nginx


nginxを起動するように設定します

>vi /etc/rc.d/init.d/nginx

#起動ファイルを編集し、次の内容を追加します

#!/bin/bash

#

# chkconfig: - 85 15

# description: Nginx は World Wide Web サーバーです。

# processname: nginx

nginx=/usr/local/nginx/sbin/nginx

conf=/usr/local/nginx /conf/nginx.conf

case $1 in

start )

echo -n "Nginx を開始しています..."

$nginx -c $conf

echo " 完了"

;;

stop)

echo -n "Nginx を停止しています..."

killall -9 nginx

echo " 完了"

;;

test)

$nginx -t -c $conf

;;

reload)

echo -n "Nginx をリロード中..."

ps grep nginx | awk '{print $2}' |

ps -aux|grep nginx

;;

*)

echo -n "使用法: $0 {start|restart|reload|stop|test|show}"

;;

esac

:wq ! #保存して終了

>chmod 775 /etc/rc.d/ init.d/nginx #ファイル実行許可を与える

>chkconfig nginx on #スタートアップを設定

>/etc/rc.d/init .d/nginx restart #Restart

>service nginx restart

Installlibmcrypt

> cd/data/soft

> tar zxvf libmcrypt-2.5.8.tar.gz make install


PHP をインストール

>cd /data/soft

>tar zxvf php-5.5 .9.tar.gz

>cd

>mkdir -p /usr/local/php5

>./configure --prefix=/usr/local/php5 --with- config-file-path=/usr/local/php5/etc --with- mysql=/usr/local/mysql --with-mysqli=/usr/local/mysql/bin/mysql_config --with-mysql-sock= /tmp/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

>make && make install



Configure php

>cp php.ini-production /usr/local/php5/etc/ php.ini #php設定ファイルをインストールディレクトリにコピー

>rm -rf /etc/php.ini #システム自身の設定ファイルを削除

>ln -s /usr/local/php5/etc/php .ini /etc/php.ini #ソフトリンクを追加します

>cp /usr/local/php5/etc/php-fpm.conf.default / usr/local/php5/etc/php-fpm.conf #をコピーしますテンプレート ファイルを php-fpm 設定ファイルに追加します

>vi /usr/local/php5/etc/php-fpm.conf #Edit

user = webuser# php-fpm 実行アカウントを webuser に設定します

group = webuser #php-fpm 実行グループを webuser に設定します

pid = run/php-fpm.pid #前のセミコロンをキャンセルします

ブート時に php-fpm が開始するように設定します

:wq! #保存して終了します

> cp /data/soft/php-5.5.9/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 #スタートアップを設定

>vi /usr/local/php5/etc / php.ini #設定ファイルの編集

次のように変更します:

disable_functions = passthru,exec,system,chroot,scandir,chgrp,chown,shell_exec,proc_open,proc_get_status,ini_alter,ini_alter,ini_restore,dl,openlog,syslog,readlink , symlink、popepassthru、stream_socket_server、escapeshellcmd、dll、popen、disk_free_space、checkdnsrr、checkdnsrr、getservbyname、getservbyport、disk_total_space、posix_ctermid、posix_get_last_error、posix_getcwd、posix_getegid、posix_geteuid、posix_getgid、posix_getgrgid、pos ix_getgrnam、posix_getgroups、posix_getlogin、posix_getpgid、posix_getpgrp、posix_getpid 、posix_getppid、posix_getpwnam、posix_getpwuid、posix_getrlimit、posix_getsid、posix_getuid、posix_isatty、posix_kill、posix_mkfifo、posix_setegid、posix_seteuid、posix_setgid、posix_setpgid、posix_setsid、posix_setuid、posix_strerror、posi x_time s,posix_ttyname,posix_uname

#PHP で無効にできる関数のリスト, if 一部のプログラムはこの機能を使用する必要があり、削除するか無効に戻すことができます。

見つかった: ; date.timezone =

変更されました: date.timezone = PRC #タイムゾーンを設定します

見つかった: Expose_php = On

変更された: Expose_php = Off #PHP バージョン情報の表示を抑制します

見つかった: short_open_tag = オフ

次のように変更します: short_open_tag = ON #php の短いタグをサポートします

:wq! #保存して終了します


php をサポートするように nginx を設定します

>vi /usr/local/nginx/conf/ nginx.conf

#設定ファイルを編集して次の変更を加えます

user webuser webuser; #user の最初の行のコメントを削除し、Nginx 実行グループを webuser webuser に変更します。これは /usr と同じである必要があります。 /local/php5/etc/php-fpm.conf ユーザーとグループの設定が同じです。そうしないと、php が正しく実行されません

indexindex.phpindex.htmlindex.htm; #index.php を追加します

#場所のコメントを解除しますFastCGI サーバー部分の fastcgi_param 行のパラメーターに注意し、それを $ document_root $ FastCGI_Script_name に変更するか、絶対パス

# PASS The PHP Scripts to Fastcgi Server Listening on 127.0.0.1:9000

Location ~ を使用します。 php $ {

ROOT/Data /wwwroot;#ルート ディレクトリを /data/wwwroot に変更します。デフォルトは html

fastcgi_pass 127.0.0.1:9000;

fastcgi_index Index.php;

fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script _名前;

include include fastcgi_params;

}

#同時に、画像と js /css キャッシュをサポートするために、以下の部分を追加します

location ~.*.(jpg|jpeg|gif|css|png |ico|html)?$ {

;

}

location ~ .*.(js|css)?${

root /data/wwwroot/;

有効期限は 30 日です;

ブレーク;

}

:wq! #保存して終了

> /etc/init.d/nginx restart #nginx を再起動します

>chown webuser.webuser /data/wwwroot/ -R #デフォルトの Web サイトのルート ディレクトリの所有者を設定しますデフォルトは /usr/local/nginx/html

> chmod 700 /usr/local/nginx/html/ -R #ディレクトリ権限を設定します

>shutdown -r now #システムを再起動します

ポート 80 と 3306 へのアクセスを許可するようにファイアウォールを変更します

>iptables -I INPUT -p tcp --dport 80 -j ACCEPT

>iptables -I INPUT -p tcp --dport 3306 -j ACCEPT

>/etc/init.d/iptables save

これで設定は完了しました。テストするために新しいindex.phpを作成してください


>vi /data/wwwroot/index.php #Create nginx Web サイトのルート ディレクトリに新しい Index.php を作成します


phpinfo(); ?>

:wq! #保存して終了します

http:// からサイトにアクセスしますyourip/index.php に php 情報が表示されていれば、正常に実行されています

###### ################## ############################## ##################

サーバー関連の操作コマンド


service nginx restart #nginxの再起動

service mysql restart #mysqlの再起動

/usr/local/ php5/sbin/php-fpm #php-fpmの起動

/etc/rc.d/ init.d/php-fpm restart #php-fpmを再起動

/etc/rc.d/init.d/php-fpm stop #php-fpmを停止

/etc/rc.d/init.d/php- fpm start #php-fpm の開始

################### ##################### ########################### ########

ソフトウェアインストールディレクトリの説明

nginx:/usr/local/nginx

php:/usr/local/php5

mysql:/usr/local/mysql


mysqlデータベースストレージパス: /data/ mysqldata

Web サイトのストレージ パス: /data/wwwroot


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