设为首页 收藏本站
查看: 1182|回复: 0

[经验分享] Apache服务器之一理论讲解(Apache)

[复制链接]

尚未签到

发表于 2018-11-22 10:58:28 | 显示全部楼层 |阅读模式
  前期做这个实验的时候:
  httpd:SELINUX(事先让其处于DISABLED状态)
  getenforce
  setenforce 0
  

  编辑/etc/sysconfig/selinux
  

  selinux的3种选择:disabled permissive enforcing 3种选择;
  

  Disabled就不用说了,permissive就是selinux有效,但是即使你违反了策略的话它让你继续操作,但是把你违反的内容记录下来。
  在我们开发策略的时候非常的有用。
  

  

  httpd在redhat系统上是受selinux控制的,一定要将selinux处于permissive,disabled状态。
  

  httpd.x86_64:服务包
  httpd-devel.i386:这个是开发包,不做开发就用不到它;
  httpd-manual.x86_64:本地的手册页;
  只需要安装httpd这个包即可。
  

  httpd:SELINUX
  /usr/sbin/httpd(MPM: prefork)  默认是prefork的;
  httpd进程启动起来之后,有好几个进程。下面说下出现这几个进程出现的原因:
  httpd: root, root (master process) 主导进程
  在linux系统上,小于1024的端口,只有管理员有权限启动它。因此第一个进程是管理员启动的。它不响应用户请求,它用于创建空闲进程,或者销毁进程。
  httpd: apche, apache (worker process)工作进程
  
  同时它也有自己的服务脚本:
  /etc/rc.d/init.d/httpd
  
  Port: (80/tcp), (https: 443/tcp)
  
  编译的话,任务软件的安装目录在/etc/httpd这个目录里面;
  /etc/httpd: 工作根目录,相当于windows下程序安装目录
  /etc/httpd/conf: 配置文件目录
  主配置文件:httpd.conf
  主配置文件的组成分还包含有如下部分,使用文件引用将其引用进来即可:
  /etc/httpd/conf.d/*.conf
  /etc/httpd/modules: #模块目录路径;
  /etc/httpd/logs --> /var/log/httpd: #日志文件目录
  日志文件有两类:访问日志access_log,错误日志:err_log
  /var/www/       #web服务器响应用户请求的页面路径;
  html        #apache提供静态访问时候的路径;
  cgi-bin#apache提供动态访问时候的路径;
  
  cgi: Common Gateway Interface(通用网关接口)可以理解为协议
  作用:(让web服务器能够跟额外的应用程序通信的一种机制,能够让web服务器在必要的时候启动一个应用程序,
  来处理动态的请求)
  Client --> httpd (index.cgi) --> Spawn(生成,产生)Process (index.cgi) --> httpd --> Client
  到底什么样的程序语言能够开发出动态的cgi:perl, python(默认情况下开发动态网页非常实用),
  java,(Servlet, JSP), php(开发动态站点用的语言)。
  每一种程序开发语言都有自己的适应场景;
  
  为了尽可能降低web服务器的压力,web服务器无论你是否使用动态调用,让我们的动态服务器进程也实现出现,
  动态进程也像web服务器一样也实现声明好。也有一个自己的服务名字个服务的名字就叫fastcgi。这个时候这些动态进程的创建跟回收,
  由自己的服务器完成,这叫做fastcgi。这也是cgi的一种。这个时候我们就可以将我们的服务器
  分离开,静态内容一个服务器。如果是动态请求,通过TCP/IP协议,请求我们的动态服务器即可。这个时候静态内容跟动态内容就分开了。这就是为什么处理动态内容的
  服务器被称为应用程序服务器的原因。这样静态服务器跟动态服务器分离了。
  
  程序是由指令和数据组成的,指令是cpu上要运行的命令。程序最主要的是帮我们处理数据的。如果数据量非常大的话,怎么去管理?早期是放在文档中的,管理起来非常忙。
  后期引入了数据管理机制,叫做数据库服务器。这种程序能够专门帮我管理数据,而且能够通过某种接口,将这种数据服务提供给额外的其他应用程序,或者是用户。这种接口
  我们称为数据库的API。应用程序服务器越来越忙了之后,我们不能主观的将应用程序服务器分成两个,因为用户访问的数据没法同步。这时候就需要再次进行分层。如果要访问
  动态数据,首先访问web服务器,web服务器再访问应用程序服务器,应用程序服务器,应用程序服务器访问数据库服务器,应用程序服务器,完成数据的转换,
  将其转换为html文档,再返回给web服务器,web服务器再将其返回给客户。
  
  前端我使用apache服务器,中间我使用php服务器,后端我使用mysql服务器。这就叫做lamp。
  所以之后的所有内容全是围绕web服务器展开的。那我们后期就可以使用hadoop集群并行处理这些信息。这些服务器如何协同,如何链接。
  
  
  fastcgi:外部服务器与cgi通信的机制,我们起名叫fastcgi。有了它之后,动态进程就会有专门的进程生成。
  
  程序:指令和数据
  数据,数据库服务
  
  下面先针对httpd的静态页面进行配置,有哪些方式,如何进行调整等。
  以后日志主线:如何搭建单个httpd服务器,如何搭建php,如何搭建mysql。如何将httpd与php结合起来。如何将mysql域httpd,php,关联起来。如何在一台服务器上搭建
  lamp,如何将其拆开如何在三台服务器上搭建,lamp。如何再将其进行扩展,扩展成lamp的集群形式。
  





运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-638154-1-1.html 上篇帖子: APACHE 问题集合 下篇帖子: yum安装apache服务器
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表