実験+掲示板を構築するためにコミュニティを構築するためのLNMPプラットフォーム

実験+掲示板を構築するためにコミュニティを構築するためのLNMPプラットフォーム

ビルド+ BBSコミュニティ構造にLNMPプラットフォーム:環境はnginxの、mysqlの環境、PHPの環境、掲示板コミュニティの建物を持っています

A、nginxのソフトウェア展開

1、閉じられた防護壁、セキュリティ

[ルート@ localhostの〜]#iptablesの-F

[ルート@ localhostの〜]#setenforce 0

[ルート@ localhostの〜]#のsystemctl停止firewalld

2、インストールパッケージのアップロードnginxのnginxの-1.6.0.tar.gz

3、インストール関連のライブラリnginxの

[ルート@ localhostの〜]#RPM -q PCRE-develのはzlib-develのpenssl-develの
パッケージは-develのPCREインストールしないで
インストールされていないのzlib-develパッケージには、
パッケージpenssl-develのインストールされていません

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

4、nginxのを実行するためのユーザーとグループを作成します

[ルート@ localhostの〜]#useraddの-M -s / sbinに/ nologinにnginxの // - Mは、ユーザ、-sを指定シェルログインユーザーのための初期化ホームディレクトリを確立していません

5、インストールパッケージnginxのコーデック、コーデックがインストールパスを指定するには

[ルート@ localhostの〜]#タールXFのnginx-1.6.0.tar.gz -Cは/ usr / src

[ルート@ localhostの〜]#ホスト名nginxの
[ルート@ localhostの〜]#のbashの
[ルート@ nginxの〜]#

6、コンパイルし、コンパイルし、設定をnginxのインストール

[ルート@ nginxのnginxの-1.6.0]#は./configure --prefix =は/ usr / local / nginxの--user = nginxの--group = nginxの--with-http_stub_status_module --with-http_ssl_module --with-http_flv_module - -with-http_gzip_static_module && // make installを&&作る-支持表示で模块

[ルート@ nginxのnginxの-1.6.0]#LN -sは/ usr / local / nginxの/ sbinに/ nginxのは/ usr / local / binに/

[ルート@ nginxのnginxの-1.6.0]#LLは/ usr / local / nginxの/ sbinに/ nginxの
-rwxr-XR-X。1つのルートルート5098448 11月14 14時51 は/ usr / local / nginxの/ sbinに/ nginxの

[ルート@ nginxのnginxの-1.6.0]#のCD confに
[ルート@ nginxのconfに]#

[ルート@ nginxのconfに]#エラーのnginxのnginxの設定ファイル-t //チェックは 
nginxの:構文で設定ファイル/usr/local/nginx/conf/nginx.confはIS [OK]
nginxの:設定ファイルは/ usr / local / nginxの/ confにテストは/nginx.conf IS 成功

[ルート@ nginxのconfに]#-anptのnetstat | grepを:80
マスター:TCP 0 0 0.0.0.0:80 0.0.0.0:*は、6150 / nginxのをLISTEN

#[nginxのconfの@ルート] のkillall -3 nginxの
[ルート@ nginxのconfに]#netstatの-anpt |グレップ:80
[ルートのnginxのconf @]#nginxの
#[nginxのconfの@ルート] netstatの-anpt |グレップ:80
TCP 0 0マスター:0.0.0.0:80 0.0.0.0:*は、6168 / nginxのをLISTEN

第二に、ソースデータベースのMySQLにインストールされたパッケージ

1、MySQLのインストールの依存関係

[ルート@ nginxの〜]#yumを-yインストールのncurses-develのcmakeの

2、インストールパッケージのアップロードのmysql mysqlの-5.7.24.tar.gz 

MySQLのユーザーとグループの操作を作成します3。

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

4、インストールパスを指定MYSQLインストールパッケージを抽出します

[ルート@ nginxの〜]#タールXFのmysql-5.7.24.tar.gz -Cは/ usr / src /

5、コンパイルしてインストールMySQL設定 

アップロードブーストインストールパッケージboost_1_59_0.tar.gz   目的は、現在のSQLをインストールするときに//エラーを防ぐためです

[ルート@ nginxの〜]#のCDの/usr/src/mysql-5.7.24/
[ルート@ nginxのmysqlの-5.7.24]#ます。mkdirは/ usr / local /ブースト

[ルート@ nginxの〜]#タールXF boost_1_59_0.tar.gz -Cは/ usr / local /ブースト/

[root@nginx ~]# cd /usr/src/mysql-5.7.24/
[root@nginx mysql-5.7.24]# cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_EXTRA_CHARSETS=all -DSYSCONFDIR=/etc -DWITH_BOOST=/usr/local/boost && make && make install
  //可能需要半个小时

6、mysql安装后的调整

[root@nginx ~]# cd /usr/src/mysql-5.7.24/
[root@nginx mysql-5.7.24]#chown -R mysql:mysql /usr/local/mysql/

[root@nginx mysql-5.7.24]# vim /etc/my.cnf

  1 [mysqld]
  2 datadir=/usr/local/mysql/data
  3 socket=/tmp/mysql.sock

 11 [mysqld_safe]
 12 log-error=/usr/local/mysql/data/mysql.log
 13 pid-file=/usr/local/mysql/data/mysql.pid

保存退出

7、初始化数据库

[root@nginx mysql-5.7.24]# cd

[root@nginx ~]# /usr/local/mysql/bin/mysqld --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --initialize

8、设置环境变量

[root@nginx ~]# cd  /usr/src/mysql-5.7.24/

[root@nginx mysql-5.7.24]# echo "PATH=$PATH:/usr/local/mysql/bin" >> /etc/profile

[root@nginx mysql-5.7.24]# source /etc/profile

9、启动mysql

[root@nginx mysql-5.7.24]# /usr/local/mysql/support-files/mysql.server start
Starting MySQL.Logging to '/usr/local/mysql/data/mysql.log'.
 SUCCESS!

10、修改MySQL用户密码

[root@nginx mysql-5.7.24]# cd
[root@nginx ~]# mysqladmin -u root -p'TAyRptk/I6oM' password '123456'
mysqladmin: [Warning] Using a password on the command line interface can be insecure.
Warning: Since password will be sent to server in plain text, use ssl connection to ensure password safety.

11、登录mysql用户

[root@nginx ~]# mysql -u root -p'123456'

mysql> exit
Bye

三、php环境搭建

1、安装php所依赖的安装包

[root@nginx ~]# yum -y install gd libxml2-devel libjpeg-devel libpng-devel

2、上传php-5.6.39.tar.gz 安装包,解压软件包

[root@nginx ~]# tar xf php-5.6.39.tar.gz -C /usr/src/

3、编译配置

[root@nginx ~]# cd /usr/src/php-5.6.39/
[root@nginx php-5.6.39]# ./configure --prefix=/usr/local/php5 --with-gd --with-zlib --with-mysql=/usr/local/mysql --with-mysqli=/usr/local/mysql/bin/mysql_config --with-config-file-path=/usr/local/php5 --enable-mbstring --enable-fpm --with-jpeg-dir=/usr/lib && make && make install

 

4、安装后的调整

[root@nginx php-5.6.39]# cp php.ini-production /usr/local/php5/php.ini
[root@nginx php-5.6.39]# ln -s /usr/local/php5/bin/* /usr/local/bin/
[root@nginx php-5.6.39]# ln -s /usr/local/php5/sbin/* /usr/local/sbin/

5、安装ZendGuardLander

【1】上传zend-loader-php5.6-linux-x86_64_update1.tar.gz 软件包 

【2】解压并修改相关配置文件

[root@nginx ~]# tar xf zend-loader-php5.6-linux-x86_64_update1.tar.gz -C /usr/src/
[root@nginx ~]# cd /usr/src/zend-loader-php5.6-linux-x86_64/
[root@nginx zend-loader-php5.6-linux-x86_64]# cp ZendGuardLoader.so /usr/local/php5/lib/php/
[root@nginx zend-loader-php5.6-linux-x86_64]# vim /usr/local/php5/php.ini

2031 zend_extension=/usr/local/php5/lib/php/ZendGuard
     Loader.so
2032 zend_loader.enable=1

//在最末行添加以上内容 保存退出

6、配置nginx支持php环境

[root@nginx zend-loader-php5.6-linux-x86_64]# cd
[root@nginx ~]# cd /usr/local/php5/etc/
[root@nginx etc]# cp php-fpm.conf.default php-fpm.conf
[root@nginx etc]# useradd -M -s /sbin/nologin php
[root@nginx etc]# vim php-fpm.conf

 25 pid = run/php-fpm.pid //确认pid文件位置

149 user = php        //运行用户
150 group = php         //运行组

241 pm.max_children = 50            //最多空闲进程数

246 pm.start_servers = 20            //启动时开启的进程数

251 pm.min_spare_servers = 5      //最少空闲进程数

256 pm.max_spare_servers = 35   //最大空闲进程数

保存退出

7、启动

[root@nginx etc]# /usr/local/sbin/php-fpm

[root@nginx etc]# netstat -anpt |grep php-fpm
tcp        0      0 127.0.0.1:9000          0.0.0.0:*               LISTEN      18744/php-fpm: mast

###为了方便管理#######创建一个nginx与php一同启动的服务脚本

[root@nginxetc]# vim /etc/init.d/nginx

#!/bin/bash

# chkconfig: 2345 99 20

# description: Nginx Server Control Script

PROG="/usr/local/nginx/sbin/nginx"

PIDF="/usr/local/nginx/logs/nginx.pid"

PROG_FPM="/usr/local/sbin/php-fpm"

PIDF_FPM="/usr/local/php5/var/run/php-fpm.pid"

case "$1" in

start)

$PROG

$PROG_FPM

;;

stop)

kill -s QUIT $(cat $PIDF)

kill -s QUIT $(cat $PIDF_FPM)

;;

restart)

$0 stop

$0 start

;;

reload)

kill -s HUP $(cat $PIDF)

;;

*)

echo "Usage: $0 (start|stop|restart|reload)"

exit 1

esac

exit 0

8、配置nginx支持php解析

方法一

 

[root@nginxetc]# vim /usr/local/nginx/conf/nginx.conf

 

server {

 

……

 

location ~ \.php$ {//访问.php页面的配置段

 

proxy_passhttp://192.168.200. HYPERLINK "http://192.168.200.112/" HYPERLINK "http://192.168.200.112/" HYPERLINK "http://192.168.200.112/" HYPERLINK "http://192.168.200.112/" HYPERLINK "http://192.168.200.112/" HYPERLINK "http://192.168.200.112/" HYPERLINK "http://192.168.200.112/"112 HYPERLINK "http://192.168.200.112/" HYPERLINK "http://192.168.200.112/" HYPERLINK "http://192.168.200.112/" HYPERLINK "http://192.168.200.112/" HYPERLINK "http://192.168.200.112/" HYPERLINK "http://192.168.200.112/" HYPERLINK "http://192.168.200.112/":80;//LAMP服务器的监听地址

 

}

 

}

方法二: 较为常见

[root@nginx ~]# vim /usr/local/nginx/conf/nginx.conf

server {
        listen       80;
        server_name  localhost;
        charset utf-8;
        #access_log  logs/host.access.log  main;
        location / {
            root   html/bbs;
            index index.php index.html index.htm;
        }
 location ~ \.php$ {                  //访问php页面的配置段
            root           html;   //PHP网页文档根目录                
            fastcgi_pass   127.0.0.1:9000;      //php-fpm的监听地址
            fastcgi_index  index.php;              //php首页文件
            include        fastcgi.conf;              //包括fastcgi.conf 样本配置
        }
}
[root@nginx ~]# nginx -t
nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful
[root@nginx ~]# killall -HUP nginx
[root@nginx ~]# cat /usr/local/nginx/html/php.php
<?php
phpinfo();
?>
9、在浏览器中访问192.168.200.66/php.php

 

 10、编写mysql.php文件

[root@nginx ~]# cat /usr/local/nginx/html/mysql.php
<?php
$link=mysqli_connect('localhost','root','123456');    //连接mysql数据库

if($link) echo "<h1>恭喜你,大功告成!!</h1>";    //连接成功则返回信息
  mysqli_close();                                          //关闭数据库连接
?> 

11、在浏览器中输入192.168.200.66/mysql.php

 

四、部署ComsenzDiscuz BBS论坛系统

1、上传ComsenzDiscuz 安装包ComsenzDiscuz-DiscuzX-master.zip,解压

[root@nginx ~]# uzip ComsenzDiscuz-DiscuzX-master.zip

[root@nginxDiscuzX]# ls upload/

admin.phpapi.php config crossdomain.xml favicon.ico group.phpindex.php m misc.phpportal.phpsearch.php static uc_client

api archiver connect.php data forum.phphome.php install member.phpplugin.php robots.txt source template uc_server

2、上传bbs代码

[root@nginxDiscuzX]# mv upload/ /usr/local/nginx/html/bbs

3、浏览器访问http://192.168.200.66/bbs/install/index.php

 

 4、设置权限及模板文件

 

[root@nginx~]# cd /usr/local/nginx/html/bbs/config/

 

[root@nginxconfig]# cp config_global_default.php config_global.php

 

[root@nginxconfig]# cp config_ucenter_default.php config_ucenter.php

 

 

 

[root@nginx~]# cd /usr/local/nginx/html/bbs

 

[root@nginxbbs]#chmod -R 777 config/ data/ uc_client/ uc_server/

 

 

 

 5、准备数据库并配置相关授权

 

[root@nginx~]#mysql -uroot -p123456

 

mysql> create database bbs;

 

Query OK, 1 row affected (0.00 sec)

 

 

 

mysql> grant all on bbs.* to 'bbs'@'localhost' identified by 'bbs123456';

 

Query OK, 0 rows affected, 1 warning (0.07 sec)

 

 

 

mysql> flush privileges;

 

Query OK, 0 rows affected (0.00 sec)

 

 

 

 

 

 

[root@nginx~]# vim /usr/local/nginx/conf/nginx.conf

user  nginxnginx;

worker_processes  2;

error_log  logs/error.log;

pid        logs/nginx.pid;

worker_rlimit_nofile 102400;

 

events {

    use epoll;

worker_connections  4096;

}

 

 

http {

    include       mime.types;

default_type  application/octet-stream;

 

log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '

                      '$status $body_bytes_sent "$http_referer" '

                      '"$http_user_agent" "$http_x_forwarded_for"';

 

access_log  logs/access.log  main;

sendfile        on;

keepalive_timeout  65;

 

    server {

        listen       80;

server_name  localhost;

        charset utf-8;

 

        location / {

            root   html/bbs;

index  index.php index.html index.htm;

        }

 

location ~ \.php$ {

    root html/bbs;

fastcgi_pass 127.0.0.1:9000;

fastcgi_indexindex.php;

            include fastcgi.conf;

}

 

location /status {

stub_status on;

access_log off;

}

error_page   500 502 503 504  /50x.html;

        location = /50x.html {

            root   html;

        }

    }

}

 

[root@nginxetc]#killall -HUP nginx

6、访问192.168.200.66

浏览器访问h HYPERLINK "http://192.168.200.111/" HYPERLINK "http://192.168.200.111/" HYPERLINK "http://192.168.200.111/" HYPERLINK "http://192.168.200.111/" HYPERLINK "http://192.168.200.111/" HYPERLINK "http://192.168.200.111/" HYPERLINK "http://192.168.200.111/"ttp://192.168.200.111

 

 

 

 

 

おすすめ

転載: www.cnblogs.com/elin989898/p/11856228.html