lamp/lnmp阶段复习

准备两台机器,一台跑mysql,一台跑web

一:安装mysql

wKioL1Zrm4Og46OFAABaBOchAfQ292.png


wKioL1ZrnPGzm0agAAElHMtyqbk279.pngwKioL1ZrnYDy5LwlAACNI9QNLY8024.pngwKioL1ZrnYDy5LwlAACNI9QNLY8024.png

wKioL1ZrncuzWO8lAACAlOBLHuE868.png192.168.31.166是web机器

在web机器上登录mysql:wKiom1ZrnlyAXX40AACB2oXydg4544.png


web机器:安装的环境是LAMP加nginx,这里面不存在LNMP,nginx只是作为一个代理,那他作为代理的时候是不需要php环境的。

wKioL1Zrn67T9iu6AABxrp5iejM270.pngLAMP环境安装好后,接下来做一些配置

wKiom1ZroEfSDmHTAAArfqpMj4c923.png

上图是bbs是discuz论坛

wordpress在cn.wordpress.org下载

wKioL1ZroPWR454lAABUlNaghM0766.png


解压wordpress:wKioL1ZroX3jeMy9AAAbU0_E9YI029.png

wKiom1Zrob7SRoJTAABlCqqovMg474.png

wKiom1Zrokbjd-nJAAAkXNM8hfQ948.png


pma就是phpmyadmin

wKioL1ZroqejQC6oAAAnj6CHcxs908.png添加三个虚拟主机

wKiom1Zro1_BN4QIAABUz_8Pncc526.png

检查配置文件是否正确、检查80端口是否监听

wKioL1Zro6uxiZB6AAC8X5Tra8g687.png

在host文件添加

wKioL1ZrpCGwoP8kAAAaSqmQYt8195.png


现在在浏览器访问bbs.abc.com,因为这个我们没有安装,我们是直接复制的也就是他这个里面已经存在了配置文件,他的配置文件使我们的老系统、老论坛的配置文件,可能我们访问会存在一些问题,如下图所示,当然你也可以重新安装。当然在这里我用另外一种方法去改他,去改配置文件的方法,


wKiom1ZrpvSD7VfYAACXHmt7Uuw656.pngwKiom1Zrp1egD39IAACVviDaOAo351.png

wKiom1ZrqEayYFCaAACb-B7mOOU569.pngUC_DBNAME还没有,等会把本地的mysql拷贝过去。为啥要讲这种方法,因为日后可能会面临网站迁移,改域名。

wKiom1ZrqkzzhhDqAAAXktGu1Lw629.pngglobal是全局的

wKiom1ZrqoujTWAFAAEBFNK-br4916.pngwKioL1Zrq1yDkvxJAADxnLtRdhg040.pngwKiom1ZrpfiDzXqrAAEdlwdLi4k706.png

现在改完了,可以试着刷新浏览器,发现错误已经发生了改变,实际上他已经连上对方数据库,但是对方数据库里并没有指定aming这个库,所以需要把库拷贝过去

wKiom1Zrr2ayQz_CAABlfooUsgs728.png这个错误说明对方机器需要安装rsync和openssh-clients

wKiom1Zrr8GjzukIAAAunQ-j7Cc974.png

wKioL1ZrsF3S6KUNAAAnKYwutg8622.png



wKioL1ZrrSmzY3KXAAFnNfrjCF0669.png

浏览器再次刷新下:又报这样的错,是权限问题

wKioL1ZrsK2wxRYXAABBQxPHAm8601.pngwKioL1ZrsWTTmwV3AAA8DTJOZFc901.png

现在再次刷新浏览器,正常了,进入discuz页面了。

点默认版块又报错了

wKioL1ZrshXwk6TXAAA-K0QBEbY728.png

这是rewrite伪静态,那我们把伪静态再次配置下,在bbs虚拟主机中添加伪静态规则

wKioL1ZrssyDkgwjAAAdHeKPVR4326.png

wKioL1Zrs-qQ0L7MAAFrQyV7_Rk357.png

wKiom1Zrxk3AVU3PAAAys-AVgek531.png

再次刷新浏览器,又报错

wKioL1ZryWPCQ1Q5AAEsiKRPEz4467.png

进入虚拟主机配置文件,把之前的参数删掉,用下面的参数

wKiom1ZrytvAWrkIAAEmeddZsE4485.png现在再次刷新浏览器,点默认版块,现在是正常了,但是图片没加载进来

wKiom1Zry7SA68KMAAFjENoWabI944.png

wKiom1ZrzpWSvYJiAAAn5xwR-rc902.png

wKiom1ZrzV3xtwxcAADIwGb0vFU255.png

还有个地方:cd /data/bbs/,用grep他的目的是为了看在哪些文件里用到了www.1.com,-r目的是搜索那些子目录

wKiom1Zr0TTBboSQAAC2mrDMrgo699.png

进入管理中心把缓存删一下:

wKiom1Zr0dfAqbfdAAEoDc9rz1Q388.png

现在再次刷新浏览器,图片就加载进来了

wKioL1Zr0h-j5Qw1AADVgAkD3PM441.png

安装wordpress,只要把wordpress程序放到指定的目录下去,然后再去绑定好这个域名就可以直接访问安装了

wKiom1Zr00ezuLlNAAD-3D-852g645.png

wKiom1Zr1GXAlaGkAACoGOy-smg931.png

提交后会无法连接数据库

wKioL1Zr1OvypN8zAADQ-jTvE50677.png

这是因为没有创建数据库里

wKioL1Zr1ZDgyT1kAABaT71STEI296.pngwKioL1Zr1caxJ7M3AAC2upJ7cmY702.png

wKiom1Zr1gixikLaAAFCNoHwHgA041.png

创建wp-config.php

wKiom1Zr12Gy6XNVAAFlSuZM19A788.png

把复制的文本拷贝过来。

wKiom1Zr19yyc5TsAAFRVp7X2Hw909.pngwKioL1Zr2CfBE-bcAADBNsoFBIw363.pngwKiom1Zr2EzyHZASAACycac99Uk193.png

下面来安装phpmyadmin

wKiom1Zr2gHD8jCcAADCCttN5Ec044.pngwKiom1Zr2weAUsEOAAF22MTNbL4994.pngwKiom1Zr24nzTLqfAAE0lUAsCIk453.pngwKiom1Zr283BPY72AAHYLBADkTI830.png







如何去动静分离?80端口如何用nginx启动?apache要启动88端口。用80端口代理88端口

把apache端口改成88:进入apache主配置文件,把lisen 80改成88

wKioL1ZussXDGldLAAC4CB4iYL4133.png再进入apache虚拟主机配置文件把80端口改成88

wKioL1Zus3njpfpiAACVXOtgGoc438.png

wKioL1Zus9-hvFlsAACzJbzT_AI404.png

wKiom1ZutGawwS7KAABNs4EE-rk120.png配置discuz.conf

server

{

    listen 80;

    server_name bbs.abc.com;

    index index.html index.htm index.php;

    root /date/bbs;


#根据user_agent控制(这个user_agent可以在apache里面配置,也可以在nginx里配置)

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

            return 403;

    }

location ~ \.php$ {     (这里是:访问php的时候需要做一个代理)

         proxy_pass   http://127.0.0.1:88;

         proxy_set_header Host   $host;

         proxy_set_header X-Real-IP      $remote_addr;

         proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

    }

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

    {

          expires      24h;

          access_log off;

    }

location ~* ^.+\.(gif|jpg|png|swf|flv|rar|zip|doc|pdf|gz|bz2|jpeg|bmp|xls)$ {

         expires 7d;

         valid_referers none blocked 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;

    }

rewrite ^([^\.]*)/topic-(.+)\.html$ $1/portal.php?mod=topic&topic=$2 last;

    rewrite ^([^\.]*)/forum-(\w+)-([0-9]+)\.html$ $1/forum.php?mod=forumdisplay&fid=$2&page=$3 last;

    rewrite ^([^\.]*)/thread-([0-9]+)-([0-9]+)-([0-9]+)\.html$ $1/forum.php?mod=viewthread&tid=$2&extra=page%3D$4&page=$3 last;

    rewrite ^([^\.]*)/group-([0-9]+)-([0-9]+)\.html$ $1/forum.php?mod=group&fid=$2&page=$3 last;

    rewrite ^([^\.]*)/space-(username|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;

}

wKioL1Zut7fRbJW-AADTFiTY-_A234.png

检测下nginx配置文件是否正确,重启nginx

wKioL1ZuuaaS7behAABhT6nN4e4048.png

wKioL1Zuud6RSnX_AAFaKzF5YY0725.png



配置blog.conf  (参考  http://www.upupw.net/nginxhelp/n33.html)

server

{

    listen 80;

    server_name blog.abc.com;

    index index.html index.htm index.php;

    root /date/blog;

#根据user_agent控制

   location ~ \.php$ {

         proxy_pass   http://127.0.0.1:88;

         proxy_set_header Host   $host;

         proxy_set_header X-Real-IP      $remote_addr;

         proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

    }

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

    {

          expires      24h;

          access_log off;

    }

 

location ~* ^.+\.(gif|jpg|png|swf|flv|rar|zip|doc|pdf|gz|bz2|jpeg|bmp|xls)$ {

         expires 7d;

         valid_referers none blocked 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;

    }

  测试:在浏览器访问blog.abc.com,出现重定向循环



配置pma

wKioL1Z1GnaxG6PcAACdQ5Yc2E8813.png

  1. server

  2. {

  3.     listen 80;

  4.     server_name pma.abc.com;

  5.     index index.html index.htm index.php;

  6.     root /data/pma;


  7.     location / {

  8.          auth_basic              "Auth";

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


  10.     location ~ \.php$ {

  11.          proxy_pass   http://127.0.0.1:88;

  12.          proxy_set_header Host   $host;

  13.          proxy_set_header X-Real-IP      $remote_addr;

  14.          proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

  15.     }


  16.     }

  17. wKioL1Z1G3bQ6tzDAABwQnrZ2sQ123.png浏览器访问:

    wKiom1Z1G6KAiwvdAAFiLwejnLg468.png




nginx记录日志,但不记录图片等静态页的日志,并且配置日志切割

wKiom1Z1HSfj1gM6AACB5yt4VZI447.png


discuz和wordpress访问后台限制一下ip白名单,比如只允许192.168.1.100访问(nginx)

wKiom1Z1HjjiJVXoAABWOr7xUbY769.png

wKioL1Z1H6zhADOCAABMetGQLd4146.png

192.168.31.144是真机的ip

wKioL1Z1IFmzxq1IAABbGcIp9xc880.png


浏览器访问:

wKiom1Z2LyWy51HzAAFvMWWzWsM075.png


那么为什么是403呢?因为我们走的是代理,代理的ip是127.0.0.1,所以在这里虚拟主机配置文件你限制任何一个ip,只要把127.0.0.1打开,所有的ip都可以访问

wKiom1Z2L-2jM4I_AABM0uvRwy8617.png

重启apache,重新访问

wKioL1Z2MJXTcGLLAAFFHLF8CX4681.png他阻断的是代理的ip,那这个时候我们该怎么办?只能去再nginx上去做限制了

vim discuz.conf

wKioL1Z2MWehzpfKAACrZ-NvW9I376.png回到apache虚拟主机配置文件

wKiom1Z2MlSwADoYAABQpjd3V4A834.png

把方框内注释掉。把apache的放开,把nginx的限制

重启apache和nginx

wKiom1Z2MvLhlb2SAABafrMT1E8652.png

访问:

wKioL1Z2MzSgxK_qAAFmgs7qEiw322.png

那么现在用另外一个ip去访问下:达到目的了

wKiom1Z2M7GguOZgAABc9CupKOU157.png

wordpress的后台在哪里呢?

wKiom1Z2NPiyKPoZAAC5PgNURzw739.pngwordpress也是在nginx里去限制

wKioL1Z2NjfAJRphAAB-xSzxLTQ004.pngwKiom1Z2Nnyw4uEhAABc1_0C3HA527.png

phpmyadmin整个站点需要配置用户认证(nginx)

wKiom1Z2N-qhrBhsAADYe8Hb9gU286.png

写一个mysql备份的脚本,每天5点执行,需要远程拷贝到web机器上



你可能感兴趣的:(浏览器,wordpress,配置文件,虚拟主机,Host文件)