精华内容
参与话题
问答
  • 有个架构是这样的,1台nginx服务器作为前端,3台apache服务器为后端,还有2台mysql主从服务器, 请问,为什么要3台apache服务器?而不是一台?作用是什么?
  • 一、实验环境:CentOS7 二、实验目标: Web_001到Web_N所有的服务器/var/www/html/目录下的数据一致,当该目录下的数据发生变化时,依次重启Apache服务。(应用场景:用于发布tomcat或...登录到每服务器,修改主...

    一、实验环境:CentOS7

           图片.png




    二、实验目标:

              Web_001到Web_N所有的服务器/var/www/html/目录下的数据一致,当该目录下的数据发生变化时,依次重启Apache服务。

                            (应用场景:用于发布tomcat或Apache等根目录下的项目)


    三、实验步骤:

        1.登录到每台服务器,修改主机名、IP地址、DNS、并关闭firewalld和selinux防火墙等(改完需要重启电脑才可生效),并安装rsync、httpd、inotify-tools软件等

            (1)主机名称、防火墙等相关修改

            图片.png


            (2)安装rsync、httpd软件

                    yum install rsync httpd -y

           

                至此,就可以使用rsync同步目录或者是文件,使用方法和scp类似,再配合计划任务就可以作为日常的周期性数据备份。但需要注意的是,scp只能用于复制小的目录,他的工作原理是需要遍历所有文件后才执行复制数据的动作。

                            例如:/usr/bin/rsync -aqzP --delete /tmp/hbgslz/ root@192.168.1.45:/tmp/hbgslz/

                                            192.168.1.45为远程服务器

    -l  --links         保留软链结 
    -p  --perms         保持文件权限
    -o  --owner         保持文件属主信息
    -g  --group         保持文件属组信息
    -D  --devices      
    保持设备文件信息
    -P              显示文件传输的进度信息。(实际上"-P"="--partial --progress",其中的"--progress"才是显示进度信息的)。
    -q  --quiet      忽略错误信息的输出
    -a --archive     归档模式,表示递归传输并保持文件属性。等同于"-rtopgDl"。
    -r --recursive    递
    归到目录中去。
    -t --times      保持mtime属性。强烈建议任何时候都加上"-t",否则目标文件mtime会设置为系统时间,导致下次更新检查出mtime不同从而导致增量传输无效。
    -z          在传输过程中压缩文件数据
    --delete        以SRC为主
    ,对DEST进行镜像同步。多则删之,少则补之,注意"--delete"是在接收端DEST上执行的
              

        (3)安装inotify-tools软件(从kernel 2.6.13开始正式并入内核)

                   

                    wget -c http://github.com/downloads/rvoicilas/inotify-tools/inotify-tools-3.14.tar.gz

                    tar -zxf inotify-tools-3.14.tar.gz

                    cd inotify-tools-3.14

                     ./configure --prefix=/usr/local/inotify/

                     make 

                    make install

        (4)修改/proc/sys/fs/inotify/目录下max_queued_events、max_user_instances、max_user_watches 的默认值

                下图为默认的参数值:

            图片.png

            

           以max_user_watches为例,修改/etc/sysctl.conf下的内核参数:

                文件路径:/proc/sys/fs/inotify/max_user_watches

                /etc/sysctl.conf添加内容:fs.inotify.max_user_watches = 999999999

                将文件路径红色区域的内容复制到/etc/sysctl.conf里面,并将“/”改为“.”,修改完内核参数后,必须执行sysctl -p 使其立即生效         

            图片.png

            图片.png


        2.登录到Web_N服务器,创建免秘钥登录证书,并复制该秘钥证书到远程服务器Web_001~Web_N台服务器(若服务器数量比较多,可以使用脚本操作,可参考下面重新启动Apache服务的脚本)

                        注意:因为脚本是使用的SSH远程访问后执行命令,所以就算是Web_N本地也需要执行ssh-copy-id root@192.168.1.45

                图片.png

                图片.png

        3.数据同步和远程重启Apache服务脚本:

                inotify_rsync_data.sh:用于数据同步

    #!/bin/bash
    SRC=/var/www/html/
    DEST=root@192.168.1.45:/var/www/html/
    /usr/local/inotify/bin/inotifywait -mrq -e access,modify,attrib,close_write,close_nowrite,close,open,moved_to,moved_from,move,create,delete,delete_self,unmount ${SRC} | while read A B C
    do
            chmod 755 -R $SRC
            /usr/bin/rsync -aqzP --delete $SRC $DEST
         
    done

                 inotify_rsync_service.sh:用于数据同步完后重启Apache服务

    #!/bin/bash
    SRC=/var/www/html/
    /usr/local/inotify/bin/inotifywait -mrq -e access,modify,attrib,close_write,close_nowrite,close,open,moved_to,moved_from,move,create,delete,delete_self,unmount ${SRC} | while read A B C
    do
          
            #远程登录指定的服务器执行重启Apache的服务,注意配置SSH免秘钥登录 
                    for n in {104,45};do
                            ssh 192.168.1.$n "/usr/bin/systemctl restart httpd.service"
                            done
                
    done

      

        4.将脚本放置到开机启动文件内,并且后台运行。


                    图片.png



        注意事项:

                    注意观察文件传输时间。

            图片.png

            图片.png


            

            附:rsync亦可以使用匿名同步,但需要配置/etc/rsyncd.conf、/etc/rsyncd.passwd(该文件需手动在DEST中新建)、/etc/rsyncd.motd(该文件需手动在DEST中新建)等文件

                    图片.png

                    图片.png

                    图片.png

                    图片.png

                    图片.png

                    图片.png

    转载于:https://blog.51cto.com/hbgslz/2064576

    展开全文
  • 值得一提的是,由于本门课程是一门真正介绍“中思想”以及将“中思想”和“分布式系统开发实战”相结合落地的课程,故而在学完本门课程之后,可以掌握到的核心技术自然是相当的。主要由SpringBoot2.0、...
  • Linux:一台apache服务器上部署个项目的apache配置 第一步: 将代码取到/var/www/html目录下(此为默认目录,具体看apache的设置);该目录下可以放个项目,如: [root@www html]# pwd/var/...

    第一步:

    将代码取到/var/www/html目录下(此为默认目录,具体看apache的设置);该目录下可以放多个项目,如:

    [root@www html]# pwd
    /var/www/html
    [root@www html]# ls
    bossmail.cn  bossq.cn  oem  ydj.org  yzhantong 

    第二步:

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

    <VirtualHost *:80>
        DocumentRoot "/var/www/html/bossq.cn"
        ServerName test.bossq.cn
        ServerAlias bqapi.bossq.cn
    </VirtualHost>

    <VirtualHost *:80>
       DocumentRoot "/var/www/html/ydj.org"
       ServerName ydj.org
       ServerAlias www.ydj.org
       ErrorLog "logs/ydj.org-error_log"
      CustomLog "logs/ydj.org-access_log" common
    </VirtualHost>

    <VirtualHost *:80>
       DocumentRoot "/var/www/html/oem"
       ServerName yzt241.com
       ServerAlias www.yzt241.com
       ErrorLog "logs/oem-error_log"
      CustomLog "logs/oem-access_log" common
    </VirtualHost>

    <VirtualHost *:80>
       DocumentRoot "/var/www/html/yzhantong"
       ServerName cnh.cn
       ServerAlias www.cnh.cn
       ErrorLog "logs/cnh.cn-error_log"
      CustomLog "logs/cnh.cn-access_log" common
    </VirtualHost>

    <VirtualHost *:80>
       DocumentRoot "/var/www/html/bossmail.cn"
       ServerName bossmail.cn
       ServerAlias test.bossmail.cn
       ErrorLog "logs/cnh.cn-error_log"
      CustomLog "logs/cnh.cn-access_log" common
    </VirtualHost>

    第三步:

    本地电脑的hosts文件添加解析,如:

    192.168.148.18 test.bossmail.cn

     

    打开浏览器输入:test.bossmail.cn或者bossmail.cn即可访问

    posted on 2015-10-13 10:54 channy14 阅读(...) 评论(...) 编辑 收藏

    转载于:https://www.cnblogs.com/channy14/p/4873895.html

    展开全文
  • 这个问题在我前段时间决定从IIS转向apache时用了一天才解决的问题,现将过程分享给大家。...(确保以上两步正确后可进行第三步)第三部配置apache多域名,也可以称为主机头。过程如下(以ip地址为:123.123.123....

     

    这个问题在我前段时间决定从IIS转向apache时用了一天才解决的问题,现将过程分享给大家。有错误的地方还请指正。

    第一步安装好apache,mysql;

    第二部配置apache和mysql,这个在网上有一大把,不知道的请问google或baidu。(确保以上两步正确后可进行第三步

    第三部配置apache多域名,也可以称为主机头。过程如下(以ip地址为:123.123.123.123,默认端口为例):

    在httpd.conf文件末尾加上如下代码:

    NameVirtualHost 123.123.123.123:80

    <VirtualHost 123.123.123.123:80>
    ServerName www.a.com
    DocumentRoot f:\website\a
    ErrorLog logs/moodle-error.log
    TransferLog logs/moodle-access.log
    ServerAdmin master@a.com
    </VirtualHost>

    <VirtualHost 123.123.123.123:80>
    ServerName a.com
    RewriteEngine on
    RewriteRule ^(.*)$ http://www.a.com$1 [R=301,L]
    </VirtualHost>
    <VirtualHost 123.123.123.123:80>
    ServerName www.b.com
    DocumentRoot f:\website\b
    ErrorLog logs/word-error.log
    TransferLog logs/word-access.log
    ServerAdmin master@b.com
    </VirtualHost>
    <VirtualHost 123.123.123.123:80>
    ServerName b.com
    RewriteEngine on
    RewriteRule ^(.*)$ http://www.b.com$1 [R=301,L]
    </VirtualHost>

    分析:以上就配置了www.a.com和www.b.com域名指向同一台服务器,各不相干的局面。不带www的域名使用301重定向到带www的域名,保证了对搜索引擎的友好性,把#LoadModule rewrite_module modules/mod_rewrite.so 前的#去掉并重启apache,保证RewriteEngine 能够正常工作(切记)。当然你也可以带www的域名使用301重定向到不带www的域名。

     

    转载于:https://blog.51cto.com/firef/1272801

    展开全文
  • 例如要在一服务器上设置如下两个站点: http://www.test1.com http://www.test1.com 下面以CentOS 7.2系统为例,详细说明如何配置基于不同域名的Apache虚拟主机。 第一步:开启Apache的vh...

    使用不同的域名来区分不同的网站,所有的域名解析都指向同一个 IP 地址。Apache通过在HTTP头中附带的 host参数来判断用户需要访问哪一个网站。

    例如要在一台服务器上设置如下两个站点:

    http://www.test1.com

    http://www.test1.com


    下面以CentOS 7.2系统为例,详细说明如何配置基于不同域名的Apache虚拟主机。

    第一步:开启Apache的vhost模块

    在 http.conf 配置文件中,找到下面的代码行,删除前面的 # 号,并开启这个 vhost 模块。

    #LoadModule vhost_alias_module modules/mod_vhost_alias.so

    第二步:在 Apache的配置文件夹下新建 vhost.conf,用以作为虚拟主机的配置文件

    设默认情况下网站目录为 /webdata

    根据实际情况添加以下的配置(放在同一个vhost.conf中):

    <VirtualHost *:80> #监听80端口
    ServerAdmin root@test1.com #网站管理员联系方式
    DocumentRoot “/webdata/test1” #网站目录
    ServerName www.test1.com #站点域名,用于识别不同的网站
    ServerAlias test1.com #别名
    ErrorLog “logs/test1-error.log” #错误日志路径
    CustomLog “logs/test1-access.log” common #访问日志路径

    <VirtualHost *:80> #监听80端口
    ServerAdmin root@test2.com #网站管理员联系方式
    DocumentRoot “/webdata/test2” #网站目录
    ServerName www.test2.com #站点域名,用于识别不同的网站
    ServerAlias test2.com #别名
    ErrorLog “logs/test2-error.log” #错误日志路径
    CustomLog “logs/test2-access.log” common #访问日志路径

    这里只配置了两份域名信息,服务器上有多少个网站,就配置多少份以上信息,并根据实际情况修改其中的内容。在 http.conf 文件中加入一行 Include /etc/httpd/conf/vhost.conf,将 vhost.conf 文件内容包含进来。

    第三步:在/etc/hosts文件中将网站的域名绑定到本地环回地址上(在hosts文件末尾加入以下信息)

    127.0.0.1 www.test1.com
    127.0.0.1 www.test2.com

    第四步:重启
    使用 service httpd reload 命令重新加载配置文件,或使用 service httpd restart 命令重启 Apache 进程。
    最后把域名解析到服务器,不同域名成功访问了不同的网站内容。


    下面以wampserver3.1.0为例说明在Windows本地配置多站点服务器

    第一步:开启Apache的vhost模块
    在 http.conf 配置文件中,找到下面的代码行,删除前面的 # 号,并开启这个 vhost 模块。

    #LoadModule vhost_alias_module modules/mod_vhost_alias.so

    第二步:在 Apache的配置文件夹下新建 vhost.conf,用以作为虚拟主机的配置文件。
    设默认情况下网站目录为D:/wamp64/www/test1
    根据实际情况添加以下的配置(放在同一个vhost.conf中):

    <VirtualHost 127.0.0.1:80> #监听80端口
    ServerAdmin root@localhost.com #网站管理员联系方式
    DocumentRoot “D:/wamp64/www/test1” #网站目录
    ServerName 127.0.0.1 #站点域名,用于识别不同的网站
    ServerAlias 127.0.0.1 #别名
    ErrorLog “logs/test1-error.log” #错误日志路径
    CustomLog “logs/test1-access.log” common #访问日志路径

    <VirtualHost 127.0.0.2:80> #监听80端口
    ServerAdmin root@test2.com #网站管理员联系方式
    DocumentRoot “D:/wamp64/www/test2” #网站目录
    ServerName 127.0.0.2 #站点域名,用于识别不同的网站
    ErrorLog “logs/test2-error.log” #错误日志路径
    CustomLog “logs/test2-access.log” common #访问日志路径

    这里只配置了两份域名信息,服务器上有多少个网站,就配置多少份以上信息,并根据实际情况修改其中的内容。在 http.conf 文件中加入一行 Include/etc/httpd/conf/vhost.conf,将 vhost.conf 文件内容包含进来。

    第三步:重启服务器

    Linux公社的RSS地址:https://www.linuxidc.com/rssFeed.aspx

    本文永久更新链接地址:https://www.linuxidc.com/Linux/2018-06/152896.htm

    展开全文
  • Apache2.2.8手动安装成Windows的服务 可以选择在安装Apache时自动将其安装为一个服务。如果选择"for all users",那么Apache将会被安装为服务。 如果选择了"only for the Current User",可以在安装后手动将...
  • 2019独角兽企业重金招聘Python工程师标准>>> ...
  • 入门学习Linux常用必会60个命令实例详解doc/txt

    千次下载 热门讨论 2011-06-09 00:08:45
    每个虚拟控制台可以看作是一个独立的工作站,工作之间可以切换。虚拟控制台的切换可以通过按下Alt键和一个功能键来实现,通常使用F1-F6 。 例如,用户登录后,按一下“Alt+ F2”键,用户就可以看到上面出现的...
  • # Virtual Hosts# # Required modules: mod_log_config # If you want to maintain multiple domains/hostnames on your # machine you can setup VirtualHost containers for them. Most configurations # use on
  • 快过年了,本猿提前祝大家新年快了!  本猿比较懒,一直都是看大家写的博客,有CSDN账号都是用来下资料的,到年底了,突然想写点东西,和大家一起探讨... 前一段时间接到总监的任务,本公司有很的Linux中都有布置a
  • 下载安装Apache2.2.4,选择下载windows平台安装包文件apache_2.2.4-win32-x86-no_ssl.msi。 下载tomcat Connector(jk1.2.6). 此处注意一定要下载与Apache版本匹配的jk。jk文件名后半部分名称反应Apache的版本...
  • Apache配置一云服务器上搭建域名网站。 一服务器上搭建个网站,每个网站对应一个域名,有利于资源的节约,易于管理。 通过修改httpd-vhosts.conf文件实现。 通过修改httpd-vhosts.conf文件实现。 在httpd-...
  • Apache启动方式 在终端里输入命令: 启动 Apache: sudo apachectl start 关闭 Apache: sudo apachectl stop 重启 Apache:sudo apachectl restart 查看 Apache 版本:httpd -v 启用 Apache 之后,在浏览器中访问 ...
  • 1、开启基于域名或IP地址的虚拟主机 端口80 NameVirtualHost *:80 2、添加主机 <VirtualHost *:80> DocumentRoot "D:/xampp/htdocs/" ServerName localhost </VirtualHost>... ...
  • 一个公网固定IP内网多台机器提供web服务,内容各不相同。由于没有路由设备,现使用apache的反向代理功能实现不同域名访问不同的内网机器。 先单独使用一台机器开启apache服务,此机器只有apache服务,且无的实质web...
  • 主要给大家介绍了关于在单服务器中利用Apache的VirtualHost如何搭建个Web站点的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习...
  • 总共有三种方法:通过不同的IP地址  通过不同的域名 ... 例如一CentOS7有两个IP:192.168.5.101和192.168.5.103 [root@youxi1 conf]# cd /etc/httpd/conf.d/ [root@youxi1 conf.d]# vim tes...
  • 2019独角兽企业重金招聘Python工程师标准>>> ...
  • 一、安装apache并开启端口 [root@server ~]# netstat -ntplu | grep httpd tcp 0 0 0.0.0.0:8000 0.0.0.0:* LISTEN 1934/httpd tcp 0 0 0.0.0...
  • 今天研究了下Apache下如何使用一主机绑定个域名且使用80端口。说白了就是在一主机上运行个网站,并且网站域名都是使用的80端口。 具体方法如下: 1、进入Apache conf目录,找到httpd.conf,比如我的目录是...
  • 1、使用 yum install httpd 安装apache 2、安装完的目录都在下面这个文件夹里 打开文件中的配置文件: 查看监听的是80端口,保存后重启apache服务 /etc/init.d/httpd restart 如图显示启动成功,如果不想看到中间...
  • java 面试题 总结

    2009-09-16 08:45:34
    态性包括参数化态性和包含态性。态性语言具有灵活、抽象、行为共享、代码共享的优势,很好的解决了应用程序函数同名问题。 2、String是最基本的数据类型吗? 基本数据类型包括byte、int、char、long、float、...
  • 设置windows 127.0.0.1 www.yangyun.com 127.0.0.1 www.drawwiz.me
  • 之前写了一篇文章关于linux下apache虚拟主机配置,配置那是相当简单: <VirtualHost *:80> ServerAdmin admin@example.com DocumentRoot /var/www/html/blog ServerName blog.phpddt.com ErrorLog /...
  • 我们安装的apache再在 /usr/loacal/apache2/conf/ 按下面图片寻找配置文件。extra就是拓展文件。
  • 完整代码: ... import org.apache.http.client.fluent.Async; import org.apache.http.client.fluent.Content; import org.apache.http.client.fluent.Request; import org.apache.http.concurr

空空如也

1 2 3 4 5 ... 20
收藏数 3,674
精华内容 1,469
关键字:

多台apache