• / + 内容:表示在文本中搜索该内容;
  • :q!:不保存直接退出;
  • chown  -R  imooc:imooc /data:将 /data 文件夹的权限所有人该为用户 imooc;
  1. -R:采用递归的方式;
  2. /data 文件夹下的所有文件的权限都为用户 imooc;
  • sudo su + 用户名:切换用户;

一、简介

  • WebServer:web 服务器;
  • WebServer 中常用的两款软件:NGINX、APACHE;
  • WebServer 默认是 80 端口;(也可以改成其它端口)
  • WebServer 启动后,可以通过浏览器直接访问服务器的 80 端口;
  • 服务器通过 80 端口提供服务,用户通过浏览器访问服务器的 80 端口类接受服务;
  • 网络统计:netstat  -anpl  |  grep  'http',可以查看完了端口等信息;

二、Apache

 1)Apache 的简单命令

  • ps  -ef  |  grep  httpd:查询 httpd 是否存在;
  • service  httpd restart:重启WebServer;

 2)Apache 的虚拟主机配置及伪静态操作

  • A)虚拟主机的作用:虚拟主机一般在配置多域名的时候使用,比如在一个服务器上配置多个网站,需要有多个配置保证每一个域名访问的网站的内容和源代码是不一样的。
  • /etc/httpd/conf:存放配置文件;
  • /etc/httpd/conf.modules.d:存放配置文件模块的配置文件;
  • /etc/httpd/modules:存放各种模块,将不同的模块添加到配置文件 httpd.conf 中时,会实现不同的功能;
  • B)模块使用方式

  1. 进入配置文件所在的目录:cd /etc/httpd/conf
  2. 在 conf 文件夹下的 httpd.conf 文件中进行配置:vim httpd.conf
  3. 在 httpd.conf 文件中搜索找到虚拟主机配置位置:/LoadModule
  4. 在 “LoadModule  foo_module  modules/mod_foo.so” 这一行下添加模块:LoadModule  模块  modules/模块
  • C)/etc/httpd/conf/httpd.conf:配置文件

  1. Listen:监听的服务器端口;
  2. Include  conf.modules.d/*.conf:加载模块的格式,* 表示任意字符;
  3. DocumentRoot  " path/html ":默认代码所在的根目录;(也可以为其它目录,配置虚拟主机就是为了可以随意配置代码目录放到任何地方)
  • D)虚拟一个主机配置:

  1. 进入配置文件所在的目录:cd /etc/httpd/conf
  2. 在 conf 文件夹下的 httpd.conf 文件中进行配置:vim httpd.conf
  3. 在 httpd.conf 文件中搜索找到虚拟主机配置位置:/virtual
  4. 开始配置:
  5. 重启 WebServer ;
  6. *:80:服务器接口为 80 端口;
  7. ServerName:域名;
  8. DocumentRoot:html 代码存放的目录;
  9. <Directory "/data/www">:关键字,html 代码所在目录;
  10. Require:访问权限,all  granted 表示对所有人授权;
  • 如果需要配置多个虚拟主机,则设置多个:<VirtualHost>;
  • E)设置访问限制:vim  /etc/selinux/config

  1. SELTNUX=enforcing:强制模式;
  2. SELTNUX=permissive:宽容模式;
  3. SELTNUX=disabled:不设置任何限制;
  • setenforce 0:表示临时打开端口接受浏览器访问;(临时操作,重启 WebServer 后又恢复默认设置)
  • setenforce 1:表示临时关闭端口拒绝浏览器访问;
  • 根据域名访问服务器内容:域名 + HTML文件,访问 DlcumentRoot 指定的文件夹下的具体文件代码(一般为 HTML 代码,也可以是PHP 代码);
  • 配置好主机,将域名解析对应服务器 IP 后,可以通过浏览器输入配置的域名(也就是网址)来访问服务器(一般为 80 端口),得到服务器提供的服务(也就是打开 DocumentRoot 指定的文件夹下的 html 代码);
  • 只有被互联网认可的域名(也就是合法的网址)才能被浏览器访问;
  • F)伪静态

  • 解释:实际上就是改变浏览器访问服务器的内容;(相当于是网页跳转)
  • 例如,通过伪静态设置后,只要网址是:域名 + *.htmp,都自动访问 “域名 + test.html ”;
  • 伪静态设置:也是在虚拟主机配置中设置;(借助  rewrite_module  模块实现)

  1. 在配置文件的 <Directory> 中添加:IfModule  mo_rewrite.c;
  2. <IfModule mod_rewrite.c>:如果添加了 mod_rewite.c 模块,则执行其下的内容;
  3. RewriteRule ^(.*)htmp  test.html:如果配置文件 httpd.conf 中添加了  mod_rewrite.c  模块,将所有网址中(域名  +  代码文件目录),域名后缀是  htmp 的网址,都访问  test.html  文件中的代码内容;

Linux:WebServer(Apacge)的更多相关文章

  1. linux:RAID(磁盘阵列)笔记

    RAID磁盘阵列简述:     RAID0(条带): 把多个同样大小的磁盘串联起来当做一个磁盘来用.         优点:读写速度快.         缺点:数据容易丢失(没有容错能力).     ...

  2. Linux:WebServer(Nginx 虚拟主机配置与伪静态实现)

    ps + 查看方式  |  grep  +  服务/端口/软件等:查看状态: 一.基本操作 Nginx 多用于商业系统: 一个端口只能被一个服务使用: Nginx 可以同时监听多个端口,也就是配置时, ...

  3. Linux:打印(输出)所有的列(awk, $0)

    如果想输出所有的列的话,只需要$0这个函数,例如以下命令: awk '/rs16945916/ {print $0}' test.txt > allcol.txt rs16945916指的是打印 ...

  4. .NET跨平台实践:用C#开发Linux守护进程(转)

    Linux守护进程(Daemon)是Linux的后台服务进程,它脱离了与控制终端的关联,直接由Linux init进程管理其生命周期,即使你关闭了控制台,daemon也能在后台正常工作. 一句话,为L ...

  5. 嵌入式Linux开发教程:Linux常见命令(上篇)

    摘要:这是对周立功编著的<嵌入式Linux开发教程>的第7期连载.本期刊载内容有关LinuxLinux常见命令中的导航命令.目录命令和文件命令.下一期将连载网络操作命令.安装卸载文件系统等 ...

  6. Linux usb子系统(二):USB设备驱动usb-skeleton.c

    usb驱动分为通过usbfs操作设备的用户空间驱动,内核空间的内核驱动.两者不能同时进行,否则容易引发对共享资源访问的问题,死锁!使用了内核驱动,就不能在usbfs里驱动该设备. 下面转载的一篇分析u ...

  7. Linux磁盘分区(二):删除

    ***********************************************声明************************************************ 原创 ...

  8. Linux磁盘分区(一):添加

    ***********************************************声明************************************************ 原创 ...

  9. CentOS 7.4 初次手记:第一章 Linux守护进程(daemon)

    第一节 init & sysvinit 6 I sysvinit 运行顺序... 6 II Sysvinit和系统关闭... 7 III Sysvinit 的小结... 7 IV 运行级别.. ...

随机推荐

  1. C++实现Prim算法

    闲来无聊,前两天看到一篇关于算法实现的文章.里面又关于图的各种算法介绍,正好上学期还学过图论,现在还记得一点点,先来实现个prim算法: 表示图的文件的内容大体上是这样的: 2.0 1.0 1.0 3 ...

  2. 学习写domready

    原视频参考http://www.imooc.com/learn/488 --博主个人尝试学习写的-- /** * Created by ty on 2016/1/3. */ //尝试自己写domrea ...

  3. Centos下找不到eth0设备的解决方法

    问题描述: ifconfig命令无法找到eth0设备,且/etc/sysconfig/network-scripts/中只有ifcfg-lo文件,而没有ifcfg-eth0. 临时解决方法一: 使用命 ...

  4. Linux0.11信号处理详解

    之前在看操作系统信号这一章的时候,一直是云里雾里的,不知道信号到底是个啥玩意儿..比如在看<Unix环境高级编程>时,就感觉信号是个挺神奇的东西.比如看到下面这段代码: #include& ...

  5. jquery 判断checkbox状态

    jquery判断checked的三种方法:.attr('checked):   //看版本1.6+返回:”checked”或”undefined” ;1.5-返回:true或false.prop('c ...

  6. 金三银四跳槽季,Java面试题大纲

    跳槽时时刻刻都在发生,但是我建议大家跳槽之前,先想清楚为什么要跳槽.切不可跟风,看到同事一个个都走了,自己也盲目的开始面试起来(期间也没有准备充分),到底是因为技术原因(影响自己的发展,偏移自己规划的 ...

  7. CentOS6 mail邮件服务配置

    mail服务配置 环境: [root@m01 ~]# cat /etc/redhat-release CentOS release 6.7 (Final) [root@m01 ~]# uname -m ...

  8. Mininet python代码创建拓扑、交互式界面创建主机、交换机

          python代码创建拓扑: from mininet.net importMininet net =Mininet() # Creating nodes in the network. c ...

  9. pytorch在CPU和GPU上加载模型

    pytorch允许把在GPU上训练的模型加载到CPU上,也允许把在CPU上训练的模型加载到GPU上.CPU->CPU,GPU->GPU torch.load('gen_500000.pkl ...

  10. c语言符号常量与常变量的区别?

    <blockquote>定义符号常量:#define PI 3.1415926               //注意后面没有分号 定义常变量  :const float PI=3.1415 ...