手動コンパイルLNMP(詳細な実験手順は、今行うことができます)

LNMP表される:Linuxシステムは、nginxの+のMySQL + PHP Webサーバのアーキテクチャ。

Linuxは総称して、最も人気のあるフリーなオペレーティングシステムであるUnixライクなコンピュータのオペレーティングシステムです。代表のバージョン:そうではDebian、CentOSのは、Ubuntu、フェドーラ、Gentooと。

nginxのは、高性能のHTTPで、リバースプロキシサーバはIMAP / POP3 / SMTPプロキシサーバです。

MySQLは小規模なリレーショナル・データベース管理システムです。

PHPはサーバー側で実行されたHTML文書に埋め込まスクリプト言語です。

これらの4つのソフトウェアは無料、効率的で、拡張可能なウェブサービスシステムとしてまとめ、無料のオープンソースソフトウェアです

この章では、あなたを取るとLNMP手動コンパイルを行います。

4つのステップのように実験手順:

  1. nginxのサービスをインストールします。

  2. MySQLサービスをインストールします。

  3. 環境のPHPインストール構成分析

  4. 清華コミュニティフォーラムWebアプリケーションの展開

実験環境:centos7.5 nginxの-1.12のmysql-ブート-5.7のphp-7.1

実験開始

nginxの[サービス]をインストールします。

1、設置環境に依存するインストールパッケージ:

[ルート@ localhostの〜]#yumを-yインストールPCRE-develのはzlib-develのGCCのgcc-C ++

2、実行しているユーザグループを作成します

[ルート@ localhostの〜]#useraddの-M -s / sbinに/ nologinにnginxの

3、インストールパッケージを抽出

タールzxvfのnginx-1.12.2.tar.gz -Cは/ opt /

4、コンパイルしてインストールおよび構成の最適化

1.12.2 nginxの-CD / 
は./configure \ 
--prefix =は/ usr / local / nginxの\ 
--user = nginxの\ 
--group = nginxの\ 
--with-http_stub_status_module                               
 作るメイク&& //ビルドとインストールnginxのインストール
LNを- Sは/ usr / local / nginxの/ sbinに/ nginxのは/ usr / local / sbinに/ // コマンドソフト接続の作成
ファイアウォールオフ// systemctl停止firewalld.service 
setenforce 0    
問題があるかどうかを確認-t // nginxの設定ファイル

のnginxを管理して簡単にサービス、サービスnginxのは、サービスsystemctlするためにそれを追加し、スクリプトを編集
Vimの/lib/systemd/system/nginx.service 
[単位] 
説明= nginxの
= network.targetした後
、[サービス]
タイプ=フォーク
PIDFILE =は/ usr / local / nginxの/ログ/ nginx.pid 
ExecStart =は/ usr / local / nginxの/ sbinに/ nginxの
ExecReload =は/ usr / binに/ -s殺すHUP $ MAINPID 
ExecStop =は/ usr / binに/ ki11 -s QUIT $ MATNPID 
PrivateTmp =真の
[インストール] 
WantedBy = multi-user.target 


のchmod 754 nginx.service //赋予执行权限

MySQLをインストールし、[サービス]

1、コンパイルツールをインストールします

yumを\インストール-y 
のncurses \ 
のncurses-develの\ 
\バイソンを
cmakeの\ 
作ります

図2に示すように、パケットのデコンプレッサ

タールzxvfのmysql-ブースト-5.7.20.tar.gz -Cは/ opt

3、カスタム設定

CDは/ opt /私の
cmakeの\ 
-DCMAKE_INSTALL_PREFIX =は/ usr / local / mysqlの\ 
-DMYSQL_UNIX_ADDR =は/ usr / local / mysqlの/にmysql.sock \ 
-DSYSCONFDIR =の/ etc \ 
-DSYSTEMD_PID_DIR =は/ usr / local / mysqlの\ 
-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 \ 
-DMYSQL_DATADIR =は/ usr / local / mysqlの/データ\ 
-DWITH_BOOST =ブースト\ 
-DWITH_SYSTEMD = 1 // 5.7版本必须添加这个参数

4、コンパイルしてインストールします

作る&& make installを

5、プログラムのユーザー、および権限設定を追加

-s useraddコマンド/ sbinに/ nologinにMySQLの
はchown -R&LTのMySQL:MySQLのは/ usr / local / MySQLの/所有者//設定がグループであります


6、(下記をコピーし、元のコンテンツを削除する)設定ファイルを変更します    


私たちはな/etc/my.cnf
[クライアント] 
ポート= 3306 
デフォルトの文字セット= UTF8の
ソケット= /usr/local/mysql/mysql.sock 
[mysqlの] 
ポート= 3306 
デフォルトの文字セット= UTF8の
ソケット= /usr/local/mysql/mysql.sock 
[mysqldを】
ユーザ= MySQLの
BASEDIR =は/ usr / local / MySQLの
DATADIR =は/ usr / local /のMySQL /データ
ポート= 3306 
character_set_server = UTF8 
PIDファイル= /usr/local/mysql/mysqld.pid 
ソケット=は/ usr / local /mysql/mysql.sockの
サーバID = 1つ
のsql_mode = NO_ENGINE_SUBSTITUTION、STRICT_TRANS_TABLES、NO_AUTO_CREATE_USER、NO_AUTO_VALUE_ON_ZERO、NO_ZERO_IN_DATE、NO_ZERO_DATE、ERROR_FOR_DIVISION_BY_ZERO、PIPES_AS_CONCAT、ANSI_QUOTES

7、環境変数を設定

エコー'PATH =は/ usr / local / mysqlの/ binに:は/ usr / local / mysqlの/ libに:$ PATH' >> / etc / profileをする
エコーの輸出のPATH ">> / etc / profileをの
ソースは/ etc / profile

図8に示すように、データベースを初期化します

CDは/ usr / local / mysqlの/ 
binに/ mysqldを\ 
--initialize、安全でない\ 
--user = mysqlの\ 
--basedir =は/ usr / local / mysqlの\ 
--datadir =は/ usr / local / mysqlの/データ
のCP USR / lib / systemdに/システム/ mysqld.serviceは/ usr / libに/にsystemd /システム/

9は、最初からデータベースを開く、シャットダウン、状態

mysqldが有効systemctl 
mysqldを開始systemctl 
mysqldを停止systemctl 
は、netstat -natpを| grepの3306

10、パスワードを設定

-pパスワードuroot-mysqladminは                   
MySQLデータベース-uルート//入力-p


PHPをインストールするには、[サービス]

1、設置環境の依存関係

yumを-y \インストール
のlibjpeg \ 
のlibjpeg-develの\ 
のlibpngのlibpng-develの\の
のFreeType FreeTypeの-develの\ 
のlibxml2 \ 
のlibxml2-develの\ 
zlibのはzlib-develの\ 
カールカール-develの\ 
opensslのopensslの-develのを

2、インストールパッケージを抽出

タールjxvf php-7.1.10.tar.bz -Cは/ opt

3、カスタム設定

CD /opt/php-7.1.10 
は./configure \ 
--prefix =は/ usr / local / PHPの\ 
--with-mysqlの-靴下=は/ usr / local / mysqlの/にmysql.sock \ 
--with-mysqliの\ 
- -with-zlibの\ 
--with-カール\ 
--with-GD \ 
--with-JPEG-dirの\ 
--with-PNG-dirの\ 
--with-freetypeの-dirの\ 
--with-opensslの\ 
--enable -fpm \ 
--enable-mbstringの\ 
--enable-XMLを\ 
\ --enable-セッション
--enable-ftpの\ 
--enable-PDO \ 
\ --enable-トークナイザ
--enable-ジップ

4、設定ファイルを変更します

// phpの3つのプロファイルがあります。

php.iniの//コアプロファイル

PHP-fpm.conf //プロセス・サービス・プロファイル

www.conf //拡張プロファイル

CPのphp.iniの開発/usr/local/php/lib/php.ini //コアモジュールが配置

/usr/local/php/lib/php.ini Vimを
mysqli.default_socket = /usr/local/mysql/mysql.sock 
date.timezoneで=アジア/上海//設定されたパス、およびタイムゾーン

は/ usr / local / PHP / binに / PHP -m // インストールモジュールを確認します

 

コンフィギュレーションおよび最適化モジュールFPM

CDは/ usr / local / PHPの/ etc / 
CP-fpm.conf.default PHP-PHPはfpm.conf 
VimのPHP-fpm.conf 
PID = RUN /除去// php-fpm.pid;注意オープンPID 

CDは/ usr / local /php/etc/php-fpm.d/ 
CP www.conf.default www.conf 
は/ usr / local / PHP / sbinに/ PHP-FPM -c /usr/local/php/lib/php.ini PHP //オープン-fpmモジュール

のnetstatの-natp | grepを9000 
LN -sは/ usr / local / PHP / binに/ *を/ usr / local / binに/ //はソフトリンクを作成します。システムはコマンド認識

のln -sは/ usr / local / PHP / binに/ *を/ usr / local / binに/ //はソフトリンクを作成します。システムはコマンドを認識し、


nginxのサポートPHP関数をしてみましょう

設定ファイル内のvimの/usr/local/nginx/conf/nginx.conf //、唯一のパス#コメントを外して変更する必要が

           LOCATIONの.php〜\ $ { 
            ルートHTMLを、
            fastcgi_pass 127.0.0.1:9000; 
            fastcgi_index index.phpを、
            fastcgi_param SCRIPT_FILENAMEは/ usr / local / nginxの/ HTML $ fastcgi_script_name; 
            fastcgi_paramsが含まれます; 
        }

5、構成サービスホームページ情報

killallを-1 nginxの//リスタートnginxのサービス  
CDは/ usr / local / nginxの/ HTML / 
MV index.htmlをindex.phpの

vimのindex.phpの
<?PHP 
のphpinfo(); 
?> //オリジナルコンテンツが変化し

192.168.109.137/indexを.PHP //ホームページへのアクセス

図6に示すように、テスト・データベースが正常に動作しています

-uroot - P MySQLの

CREATE DATABASE BBS、
すべてのGRANT ON BBS * 'admin123 BY' IDENTIFIED TO 'bbsuser' @ '%'; 
GRANT ON BBS *すべての'bbsuserは' @ 'admin123 BY' IDENTIFIED 'ローカルホスト'に; 
フラッシュ権限; 
#//アカウントの設定ファイルを入力しますが

、データベースを示し; /データベースを表示します

7、テスト接続

。VIは/ usr / local / nginxの/ HTML / PHP指数は
##と、元のテストページの内容を変更する
<?PHP 
$ = mysqli_connectリンク( '192.168.109.137'、 'bbsadm'、 'admin123'); 
IF($リンク) "<H1>成功!! </ H1>"エコー; 
他エコー"失敗!!"; 
?> 

systemctl再開nginxのの
ページのテスト"http://192.168.109.137/index.php"

 

[清華コミュニティフォーラムのWebアプリケーションのデプロイメント]


解凍Discuz_X3.4_SC_UTF8.zip -dは/ opt ## -インストールパッケージの抽出
CDを/ tmpに/ dir_SC_UTF8 / 
CP -rアップロード/は/ usr / local / nginxの/ HTML / BBSは

##パーミッションを追加し、サービスをインストールすることができ
、CDは/ usr / local / nginxの/ HTML / BBS / 
のchown -R&LTルート:nginxの./config/ 
のchown -R&LTルート:nginxの./data/ 
のchown -R&LTルート:nginxの./uc_client/ 
のchown -R&LTルート:nginxのは./uc_server/ 
のchmod -R&LT ./config/ 777 
はchmod 777 -R&LT ./data/ 
のchmod 777 -R&LT ./uc_client/ 
のchmod 777 -R&LT ./uc_server/ 


192.168.109.137/bbs/install/index.php //権限が設定された後、インストール
192.168 .109.137 /掲示板/ index.phpを//インストールが完了し、使用してログイン




LNMPマニュアル翻訳が完了しました。他のサービスのためにnginxのは私のホームページビューを入力することができます

おすすめ

転載: blog.51cto.com/14475876/2447876