ホームページ > バックエンド開発 > PHPチュートリアル > ランプ nginx プロキシ discuz wordpress phpmyadmin

ランプ nginx プロキシ discuz wordpress phpmyadmin

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
リリース: 2016-06-13 12:27:42
オリジナル
984 人が閲覧しました

ランプ nginx エージェント discuz wordpress phpmyadmin

実験トピック: LAMP をビルドし、Nginx をエージェントとしてインストールし、MySQL を別のマシンにインストールします。Apache は動的を担当し、nginx は静的を担当します


実験環境:

1. VMware Workstation 11

2機器 A: MySQL、IP アドレス: 192.168.0.102、ホスト: mysql

3. デバイス B: Nginx Apache PHP、IP アドレス: 192.168.0.107、ホスト: lanp 192.168.0.104

4. Linux ディストリビューション: Centos 6.6 x86;

5. nginx-1.6 .2.tar.gz

6. Apache: http://mirrors.sohu.com/apache/httpd-2.4.16 を取得します。 tar.gz

7. PHP: http://cn2.php.net/get/php-5.6.12.tar.gz

8. MySQL:http://mirrors.sohu.com/mysql/MySQL-5.5/mysql-5.5.42-linux2.6-i686.tar.gz

9. ディスク: http://download.comsenz.com/DiscuzX/3.2/Discuz_X3.2_SC_UTF8.zip

10、wordpress: https://cn.wordpress.org/wordpress-4.2.2-zh_CN.tar.gz

11. 🎜>https://files.phpmyadmin.net/phpMyAdmin/4.4.13.1/phpMyAdmin-4.4.13.1-all-langages.zip

12, pcre http://sourceforge.net/projects/pcre/files/pcre2/10.20/pcre2-10.20.tar.gz

4 月 13 日 http ://mirror.bit.edu.cn/apache//apr/apr-1.5.2.tar.gz

14. apr-util http: //mirror .bit.edu.cn/apache//apr/apr-util-1.5.4.tar.gz

15. epel-release http ://mirrors.ustc.edu.cn/epel/6Server/x86_64/epel-release-6-8.noarch.rpm

<font size="3">16、libmcrypt</font>
ログイン後にコピー

実験の準備:

1. 163 ダウンロード ソース

mv /etc/yum.repos.d/CentOS-Base を変更します。リポジトリ /etc/ yum.repos.d/CentOS-Base.repo.old

cd /etc/yum.repos.d/

wget http://mirrors.163.com/.help/CentOS6-Base-163.repo

mv CentOS6-Base-163.repo CentOS- Base.repo

yum clean all

yum makecache (CentOS-Base.repo $Realease:1,$s/$ を置き換えることに注意してください) Realease/6.6/g )

yum -y update

2. 各ソフトウェアをデバイス A と B にそれぞれダウンロードします。 🎜>3. システム時刻を更新します。

crontab -e */30 * * * * ntpdate 210.72.145.44 > 🎜>

4. Iptables をクリアするか、Selinux を閉じるか、データベースと Web サイトへのアクセス許可を追加します。

-A INPUT -p tcp -m state --state NEW -m tcp --dport 80 -j ACCEPT

-A INPUT -m state --state NEW -m tcp -p tcp --dport 88 -j ACCEPT ##

-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT

5. 依存関係パッケージをインストールします

yum -y install ntp make openssl openssl-devel pcre pcre-devel libpng libpng-devel libtiff-devel libjpeg-6b libjpeg-devel-6b freetype freetype-devel gd gd-devel fontconfig-devel zlib zlib-devel libevent-devel gcc gcc-c flex bison bzip2 bzip2-devel libXpm libXpm-devel ncurses ncurses- devel libmcrypt libmcrypt-devel libxml2 libxml2-devel imake autoconf automake screen sysstat compat-libstdc -33curlcurl-devel

実験手順:

デバイス A: mysql

tar zxvf /usr/local/src/

mysql-5.5。 42-linux2.6-i686.tar.gz

mv mysql-5.5.42-linux2.6-i686
/usr/local/mysql useradd -s /sbin/nologin mysql cd /usr/local/mysql mkdir -p /data/mysql chown -R mysql:mysql /data/mysql
./scripts /mysql_install_db --user=mysql --datadir=/data/mysql
cp support-files/my-large.cnf /etc/my.cnf
cp support-files/mysql.server /etc/init. d/mysqld
chmod 755 /etc/init.d/mysqld
vim /etc/init.d/mysqld #Modify datadir=/usr/local/mysql
chkconfig --add mysqld
chkconfig
サービス mysqld start

上の mysqld

mysql -uroot -p

データベースの作成 discuz;

データベースの wordpress の作成;

'yourpassword' で識別される 'youruser'@'lyourhostip' に discuz.* のすべてを付与;
wordpress .* を 'youruser'@' lyourhostip' に付与「あなたのパスワード」で識別されます;

終了

デバイス B: lanp

1. Apache をインストールします

tar zxvf /usr/local/src/httpd-2.4.16.tar.gz

tar zxvf /usr/local/src/apr-1.5.2.tar.gz

tar zxvf /usr/local/src/ apr-util-1.5.4.tar.gz

mv /usr/loca/src/apr-1.5.2 /usr /loca/src/httpd-2.4.16/srclib/apr

mv /usr/local/src/apr-util-1.5.4 /usr/loca/src/httpd-2.4.16/srclib/apr-util

cd /usr/loca/src/httpd-2.4.16

./configure --prefix=/usr/local/apache2 --with-include-apr --enable-so --enable-deflate=shared --enable-expires=shared - -enable -rewrite=shared

make && make install

cp /usr/local/apache2/bin/apachectl /etc/init. httpd

vim /etc/init.d/httpd
最初の行の下に 2 行のテキストを追加します #!/bin/sh
# chkconfig: 35 70 30
# description: Apache
保存して終了
chkconfig --level 35 httpd on

2. PHP をインストール

tar zxf /usr/local/src/php-5.6.12.tar.gz
cd php-5.6.12
/ configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache2/bin/apxs --with-config-file-path=/usr/local/php/etc --with-mysql =mysqlnd --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --with-libxml-dir --with-gd --with-jpeg-dir --with-png-dir --with-freetype - dir --with-iconv-dir --with-zlib-dir --with-bz2 --with-openssl --with-mcrypt --enable-soap --enable-gd-native-ttf --enable-mbstring - -enable-sockets --enable-exif --disable-ipv6

##PHP 独自の mysql ドライバー mysqlnd

make && make install を使用します

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

3. PHP と Apache の組み合わせを設定します

vim /usr/local/apache2/conf/httpd.conf Found: AddType application/ x-gzip .gz .tgz
次の行の下に追加します: AddType application/x-httpd-php .php
Find:

DirectoryIndexindex.html

この行を次のように変更します。

DirectoryIndexindex.htmlindex.htmindex.php

が見つかりました: #ServerName .com:80 変更先: ServerName localhost:88

検出: listen:80 変更先: listen:88

許可された許可を追加all

AllowOverride none

すべて許可する必要があります

すべてから許可

View modules/libphp5.so は存在しますか?

vim /usr/local/apache2/conf/extra/httpd-vhosts.conf

< ;VirtualHost *:88> を変更します。

DocumentRoot "/date/discuz/"

サーバー名 bbs.chinaops.com

エラーログ "logs/bbs.chinaops.com-error_log"

カスタムログ "logs/bbs.chinaops.com-access_log" common

< ;/VirtualHost>

DocumentRoot "/date/blog/"

サーバー名 blog.chinaops.com

ErrorLog "logs/blog.chinaops.com-error_log"

CustomLog "logs /blog.chinaops.com-access_log" common

    DocumentRoot "/date/pma/"

    ServerName pma.chinaops.com

    ErrorLog "logs/pma.chinaops.com-error_log"

    CustomLog "logs/pma.chinaops.com-access_log" common

service httpd -t (检查错误)

service httpd graceful(加载配置)

查看httpd的运行情况

netstat -lnp | grep httpd

四、安装nginx

tar zxvf /usr/local/src/nginx-1.6.2.tar.gz

cd nginx-1.6.2

yum install -y pcre-devel
./configure   --prefix=/usr/local/nginx   --with-pcre 
make 
make instal

编写nginx启动脚本
vim /etc/init.d/nginx  //加入如下内容
#!/bin/bash
# chkconfig: - 30 21
# description: http service.
# Source Function Library
. /etc/init.d/functions
# Nginx Settings
NGINX_SBIN="/usr/local/nginx/sbin/nginx"
NGINX_CONF="/usr/local/nginx/conf/nginx.conf"
NGINX_PID="/usr/local/nginx/logs/nginx.pid"
RETVAL=0
prog="Nginx"
start() {
        echo -n $"Starting $prog: "
        mkdir -p /dev/shm/nginx_temp
        daemon $NGINX_SBIN -c $NGINX_CONF
        RETVAL=$?
        echo
        return $RETVAL
}
stop() {
        echo -n $"Stopping $prog: "
        killproc -p $NGINX_PID $NGINX_SBIN -TERM
        rm -rf /dev/shm/nginx_temp
        RETVAL=$?
        echo
        return $RETVAL
}
reload(){
        echo -n $"Reloading $prog: "
        killproc -p $NGINX_PID $NGINX_SBIN -HUP
        RETVAL=$?
        echo
        return $RETVAL
}
restart(){
        stop
        start
}
configtest(){
    $NGINX_SBIN -c $NGINX_CONF -t
    return 0
}
case "$1" in
  start)
        start
        ;;
  stop)
        stop
        ;;
  reload)
        reload
        ;;
  restart)
        restart
        ;;
  configtest)
        configtest
        ;;
  *)
        echo $"Usage: $0 {start|stop|reload|restart|configtest}"
        RETVAL=1
esac
exit $RETVAL

将nginx服务启动

chmod a+x /etc/init.d/nginx
chkconfig --add nginx
chkconfig nginx on

配置nginx

<font size="3">> /usr/local/nginx/conf/nginx.conf</font>
ログイン後にコピー
<font size="3">vim /usr/local/nginx/conf/nginx.conf</font>
ログイン後にコピー
<font size="3">user nobody nobody;worker_processes 2;error_log /usr/local/nginx/logs/nginx_error.log crit;pid /usr/local/nginx/logs/nginx.pid;worker_rlimit_nofile 51200;events{     use epoll;     worker_connections 6000;}http{     include mime.types;     default_type application/octet-stream;     server_names_hash_bucket_size 3526;     server_names_hash_max_size 4096;     log_format combined_realip '$remote_addr $http_x_forwarded_for [$time_local]'     '$host "$request_uri" $status'     '"$http_referer" "$http_user_agent"';     sendfile on;     tcp_nopush on;     keepalive_timeout 30;     client_header_timeout 3m;     client_body_timeout 3m;     send_timeout 3m;     connection_pool_size 256;     client_header_buffer_size 1k;     large_client_header_buffers 8 4k;     request_pool_size 4k;     output_buffers 4 32k;     postpone_output 1460;     client_max_body_size 10m;     client_body_buffer_size 256k;     client_body_temp_path /usr/local/nginx/client_body_temp;     proxy_temp_path /usr/local/nginx/proxy_temp;     fastcgi_temp_path /usr/local/nginx/fastcgi_temp;     fastcgi_intercept_errors on;     tcp_nodelay on;     gzip on;     gzip_min_length 1k;     gzip_buffers 4 8k;     gzip_comp_level 5;     gzip_http_version 1.1;     gzip_types text/plain application/x-javascript text/css text/htm application/xml;     include vhosts/*.conf;</font>
ログイン後にコピー

配置nginx 虚拟主机

mkdir -p /usr/local/nginx/conf/vhosts

在vhosts下面创建三个文件bbs.conf blog.conf pma.conf

配置bbs.conf

server

{

    listen 80;

    server_name bbs.chinaops.com;

    index index.html index.htm index.php;

    root /date/bbs;

#根別user_agent規制

if ($http_user_agent ~ 'bingbot/2.​​0|MJ12bot/v1.4.2|Spider/3.0|YoudaoBot|Tomato|Gecko/20100315' ){

return 403;

}

location ~ admin.php {

192.168.0.104 を許可します。 ##真机

すべて拒否;

proxy_pass http://127.0.0.1:88;

proxy_set_header ホスト $host;

}

location ~ .php$ {

proxy_pass http://127.0.0.1:88;

proxy_set_header ホスト $host;

proxy_set_header X-Real- IP $remote_addr ;

proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

}

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

{

有効期限は 24 時間;

access_logオフ;

}

場所 ~* ^。 .(gif|jpg|png|swf|flv|rar|zip|doc|pdf|gz|bz2|jpeg|bmp|xls)$ {

有効期限は 7 日です;

valid_referers なしブロックされたserver_names *.baidu.com

*.google.com *.google.cn *.soso.com ;

if ($invalid_referer) {

return 403;

#rewrite ^/ http://www .example.com/nophoto.gif;

}

access_log off;

}

書き換え ^([^.]*)/topic-(. ).html$ $1/portal.php?mod=topic&topic=$2 last;

^([^.]*)/forum-(w )-([0-9] ).html$ $1/forum.php?mod=forumdisplay&fid=$2&page=$3 last; を書き換えます

書き換え ^([^.]*)/thread-([0-9] )-([0-9] )-([0-9] ).html$ $1/フォーラム.php?mod=viewthread&tid=$2&extra=page=$4&page=$3 last;

書き換えます ^([^.]*)/group-([0-9] )- ([0-9] ).html$ $1/forum.php?mod=group&fid=$2&page=$3 last;

rewrite ^([^.]*)/space- (ユーザー名|uid)-(. ).html$ $1/home.php?mod=space&$2=$3 last;

rewrite ^([^.]*)/(fid |tid)-([0-9] ).html$ $1/index.php?action=$2&value=$3 last;

access_log /home/logs/discuz.log combined_realip ;

}

configurationblog.conf (参考http://www. upupw.net/nginxhelp/n33.html)

サーバー

{

listen 80;

server_name blog.chinaops.com;

indexindex.htmlindex.htmindex.php;

root /date/blog;

location /wp-admin/ {

allowed 192.168 .0.104;

すべて拒否;

location ~ .php$ {

proxy_pass http://127.0.0.0.1:88;

proxy_set_header host $ host;

}

}

場所 / {

proxy_pass http://127.0.0.1:88/;

proxy_set_header ホスト $host;

proxy_set_header X-Real-IP $remote_addr;

proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

}

}

構成pma.conf

server

{

listen 80;

server_name pma.chinaops.com;

indexindex.htmlindex.htmindex.php;

root /date/pma;

location / {

auth_basic "認証";

auth_basic_user_file /usr/local/nginx/conf/htpasswd;

location ~ .php$ {

proxy_pass http://127.0. 0.1:88;

proxy_set_header ホスト $host;

proxy_set_header X-Real-IP $remote_addr;

proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

}

}

}

service nginx configtest

service nginx rsstart

五、discuz 、wordpress、phpmyadmin 構成

mkdir -p /date/{dixcuz,blog,pma}

構成discuz

useradd -s /sbin/nologin daemon

unzip Discuz_X3.2_SC_UTF8.zip

アップロード里面の文書を网站监制御目录下/date/discuz/

cd /data/discuz/

chown -R daemon.daemon config/ data/ uc_client/data/ uc_server/data/

在真机192.168.0.104修正vhost

192.168.0.104 bbs.chinaops.com blog.chinaops.com pma.chinaops.com

访问bbs.chinaops.com フィル写データ库のIPアドレス址、データ库のユーザー名前秘密および创建管理者の秘密

ランプ nginx プロキシ discuz wordpress phpmyadmin

configwordpress

cd /date

tar zxvf wordpress-4.2.2-zh_CN.tar.gz

mv wordpress-4.2.2-zh_CN ブログ

访问blog.chinaops.com/wp-admin/ フィル写数データ库のIP、データ库的用户名秘密コード

ランプ nginx プロキシ discuz wordpress phpmyadmin

構成phpmyadmin

cd /date

unzip phpMyAdmin-4.4.13.1-all-langages.zip

mv phpMyAdmin-4.4.13.1-all-langages pma

cd pma

cp ライブラリ/config。 default.php config.inc.php

変更

$cfg['Servers'][$i]['user'] = 'root';

$cfg['サーバー'][$i]['パスワード'] = 'あなたのルートパスワード';

$ cfg['サーバー'][$i]['host'] = 'yourdbip';

$cfg['サーバー'][$i]['auth_type'] = ' config';##认证モード

pma.chinaops.com にアクセスすると、

ランプ nginx プロキシ discuz wordpress phpmyadmin

ブログの転載場所: http:// linuxlearn .blog.51cto.com/1437234/1684733

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート