• / + 内容:表示在文本中搜索该内容;
  • :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. php5.4.0以后加入trait实现代码复用【摘录】

    在http://www.php.net/manual/zh/language.oop5.traits.php 查看了一下5.4.0提供的特性trait顺便做一个标记(总结): 首先要明确trait和类 ...

  2. Yii2学习笔记:汉化yii,设置表单的描述(属性标签attributeLabels)

    一:汉化框架 框架汉化在这里设置,如果不生效,前台后台的配置文件都设置下应该就可以了 二:汉化表单 汉化表单,直接在模型层设置,例如: 原来的联系我们表单 汉化后: ] 这种汉化在哪里修改呢?其实是设 ...

  3. CSS: rem

    .rem是(font size of the root element) 一般都是body的font-size为基准,即rem是相对于根元素. 字体单位 根据html根元素大小而定,同样可以作为宽度, ...

  4. WIFI 基础知识

    转载自:wifi基本知识 如侵犯您的版权,请联系:2378264731@qq.com 1. IE802.11简介 标准号 IEEE 802.11b IEEE 802.11a IEEE 802.11g ...

  5. 创建python3.6的虚拟开发环境virtualenv

    为了保证各个项目环境和插件的相对独立,使用virtualenv作为python的虚拟运行环境,这样在项目维护方面,减少在依赖包上所花费的时间. 1.安装 virtualenv虚拟环境插件 pip in ...

  6. [置顶] Android AOP 实践笔记

    本文同步自wing的地方酒馆 最近博客更新越来越慢了,有两方面原因: 1.没啥好写的. 2.应该沉下心好好沉淀自己,积累一些东西,博客写的太频繁有"刷博客"之嫌,还容易浮躁. 浮躁 ...

  7. Java 进阶巩固:什么是注解以及运行时注解的使用

    这篇文章 2016年12月13日星期二 就写完了,当时想着等写完另外一篇关于自定义注解的一起发.结果没想到这一等就是半年多 - -. 有时候的确是这样啊,总想着等条件更好了再干,等准备完全了再开始,结 ...

  8. iOS 解决上传100张图片内存奔溃问题

    最近项目需求,从相册中提取100张图片,然后上传到服务器.前提是图片不能压缩.因为要将图片信息采集出来制作出3D模型.所以必须是高清图片. 先看下代码 [NetWorking uploadWithUr ...

  9. crm 02--->讲师页面及逻辑

    要求: 讲师 批量初始化 考勤 录入成绩 批量初始化 考勤与批量初始化这两个功能都要放在课程记录表中CourseRecord # 批量初始化 # 将该班的所有学生,初始化带某一天,而不是将每个学生一个 ...

  10. 值类型struct在foreach中的陷阱

    最近踩了一个坑,为了优化代码,把class改为了struct,结果发现原来的初始化语句没有预期的运行,伪代码如下: public struct A { bool _isActive; public v ...