Linux初学者笔记04

1. http协议
       超文本传输协议(hypertext transfer protocol),html(hyper text mark language)
       http一次事务的完整过程
       client --请求报文--> server
       client <--响应报文-- server
     Web资源
       - 静态资源:png,html
       - 动态资源:jsp.php
     资源的定位
      URL:http://172.25.254.88:80/phpadmin
  2. httpd的简单应用
     安装与启动
     yum install httpd -y
     systemctl start httpd
     systemctl enable httpd
     systemctl stop firewalld
    主配置文件/etc/httpd/conf/httpd.conf
       - 修改httpd服务默认端口
         42 Listen 8080
       - 修改默认发布目录(注意selinux)
         119 DocumentRoot"/westos/www/html"
         124 <Directory"/westos/www">
         125 AllowOverride None
         126 Allow open access:
         127 Require all granted
         128 </Directory>
         163 <IfModule dir_module>
         164 DirectoryIndex index.htmlwestos.html
         165 </IfModule>
       - httpd帮助手册
         yum install httpd-manual.noarch-y
         访问:http://localhost/manual
###- 虚拟主机的建立
         一台服务器,baidu.com,qq.com

1). httpd的端口改为80,默认发布目录改回去;
       2). 创建不同域名访问不同信息的目录
           mkdir/virtual/{qq.com,baidu.com}/html -p
           echo "baidu‘page">/virtual/baidu.com/html/index.html
           echo "qq‘page">/virtual/qq.com/html/index.html
       3). 修改配置文件/etc/httpd/conf.d/目录下
           cd /etc/httpd/conf.d/
           vim virtual.conf
     
            1 <virtualhost*:80>
            2       servername www.qq.com
            3       serveralias qq.com
            4       documentroot /virtual/qq.com/html
            5       customlog "logs/qq.com.log"combined
            6 </virtualhost>
            7
            8 <directory/virtual/qq.com >
            9       require all granted
            10 </directory>

vim default.conf

1 <virtualhost*:80>
            2       documentroot /var/www/html
            3        customlog "logs/default.log"combined
            4 </virtualhost>
            5 <directory/var/www>
            6        require all granted
            7 </directory>
              systemctl start httpd
        4). 修改/virtual/目录的selinux标签,selinux=enforcing
             semanage fcontext -a -thttpd_sys_content_t ‘/virtual(/.*)?‘
             restorecon -FvvR/virtual/
        5). 客户端一定要写解析/etc/hosts
172.25.xx.xx                     www.baidu.com     www.qq.com     www.sina.com
###- 基于用户身份验证
         1). 新建用户认证可以访问的网页
             mkdir/var/www/html/admin
             echo "admin‘spage" >/var/www/html/admin/index.html
         2). 生成用户名和密码对应的文件
             htpasswd -cm/etc/httpd/.htpasswd admin
             htpasswd -m/etc/httpd/.htpasswd harry
         3). 修改配置文件File: /home/kiosk/Desktop/http.md

vim/etc/httpd/conf.d/default.conf
              <virtualhost*:80>
                    documentroot/var/www/html
                    customlog "logs/default.log"combined
              </virtualhost>
              <directory/var/www/html/admin>
                    AuthName "pleaseinput your name and passwd:"
                    AuthType basic
                    AuthUserFile /etc/httpd/.htpasswd
                    Require useradmin
              </directory>

4). 客户端访问:http://localhost/admin
###- 自定义签名证书
          * http:80 https:443
      1). 安装crypto-utils软件包
           yum install crypto-utilsmod_ssl -y
      2). 调用genkey,生成自签名证书和私钥
           genkey 172.25.254.139
      3). 编辑文件/etc/httpd/conf.d/ssl.conf
          SSLEngine on
          SSLCertificateFile/etc/pki/tls/certs/172.25.254.139.crt
          SSLCertificateKeyFile/etc/pki/tls/private/172.25.254.139.key
          重启httpd服务,访问https://www.baidu.com会访问到默认访问页面
      4). 编辑文件/etc/httpd/conf.d/virtual.conf
           1 <virtualhost*:443>
                     2 servernamewww.qq.com
                     3 serveraliasqq.com
                     4 documentroot /virtual/qq.com/html
                     5 customlog"logs/qq.com.log" combined
                     6 SSLEngine on
                     7 SSLCertificateFile/etc/pki/tls/certs/172.25.254.139.crt
                     8SSLCertificateKeyFile /etc/pki/tls/private/172.25.254.139.key
           9 </virtualhost>
           10
           11 <directory/virtual/qq.com >
                     12require allgranted
           13 </directory>
           重启httpd服务,访问https://www.qq.com会访问到/virtual/qq.com/html/index.html页面
     ** 注意: 1.第一次访问https://www.baidu.com (或者其他)时需要信任自签名证书;
              2.下次就不需要,如果想再次信任,可以在浏览器里面设置;
###- 网页重定向(rewrite):把所有80端口的请求全部重定向由https来处理
        1). 编辑/etc/httpd/conf/virtual.conf
            28 <Virtualhost*:80>
                     29 ServerNamewww.qq.com
                     30 RewriteEngineon
                     31 RewriteRule^(/.*)$ https://%{HTTP_HOST}$1 [redirect=301]
            32 </Virtualhost>

2). 重启httpd服务,客户端访问www.qq.com时自动跳转到https://www.qq.com

时间: 2024-10-26 05:34:51

Linux初学者笔记04的相关文章

Linux学习笔记04—IP配置

一.自动获取IP只有一种情况可以自动获取IP地址,那就是你的Linux所在的网络环境中有DHCP服务.只要你的真机可以自动获取IP,那么安装在虚拟机的Linux同样也可以自动获取IP. 方法很简单,只需要运行一个命令:dhclient 通过命令:ifconfig 可以查看网卡的数量及获取到的IP.二.手动配置IP配置文件存放路径:/etc/sysconfig/network-scripts/ifcfg-eth0配置:1.打开配置文件:vi /etc/sysconfig/network-scrip

Linux初学者笔记02

一. 日志管理(rsyslog)    - rsyslogd服务管理采集日志    - systemd-journald服务分析日志    - 管理日志配置文件    /etc/rsyslog.conf   1.实验:日志同步(把desktop主机上的日志同步到server主机)        (1). 关闭两主机的防火墙             设置ip:  desktop:172.25.254.1        server:172.25.254.11             修改主机名:

Linux初学者笔记03

1.rpm命令应用:    将iso镜像挂载到一目录上(mount),进入该目录中的Packages中,可看到所有可安装的软件包.          rpm -ivh  xxx.rpm       安装软件包软件       rpm -qp xxx.rpm     查询该软件包在系统中的名字          rpm -e xxx          卸载软件    rpm -ql xxx         查询安装该软件新建了哪些文件    rpm -qf 文件名      该文件是由哪个软件包提

linux学习笔记04

文本排序:sort (不影响源文件次序 只影响显示次序) -n:数值排序 -r:降序 uniq: -c:显示文件中行重复的次数 -d:只显示重复的行 文本统计:wc (word count) 字符处理命令:tr -- 转换或删除字符 bash及其特性: 命令历史.命令补全 管道,重定向 命令别名 命令行编辑 命令行展开 文件名通配 变量 编程 命令行编辑: 光标跳转: Ctrl+a:跳到命令行首 Ctrl+e:跳到命令行尾 Ctrl+u:删除光标至命令行首的内容 Ctrl+k:删除光标至命令行尾

Linux学习笔记——Ubuntu更新软件源

0.前言 通过修改ubuntu软件源可提高apt命令下载安装软件的速度. 参考资料 [官方资料]--配置文件修改方法 [Ubuntu怎样修改软件源地址]--使用ubuntu软件中心修改(推荐) [at-get update错误处理] 1.使用ubuntu软件中心更新 请参考[Ubuntu怎样修改软件源地址]--来自百度经验 图1 打开软件和更新 图2 选择国内软件源 2.使用指令方法修改 [1]首先备份源列表 sudo cp /etc/apt/sources.list /etc/apt/sour

Linux学习笔记——vmware plarer中安装ubuntu

1.前言 学习了很长时间ubuntu,在旧笔记中安装过lubuntu,也使用过他人安装好的ubuntu虚拟机(contiki2.6和contiki2.7).熟悉了ubuntu之后,决定自己尝试通过vmware player安装ubuntu. [1]vmware plaryer是免费软件,不存在破解问题.如果用来学习ubuntu完全足够了. [2]建议在虚拟机种学习ubuntu,等完全熟练之后再摆脱windows.ubuntu现在还没有有道笔记,QQ等工具,总感觉网上世界少了点什么. [3]在虚拟

Linux学习笔记——如何在交叉编译时使用共享库

0.前言 在较为复杂的项目中会利用到交叉编译得到的共享库(*.so文件).在这种情况下便会产生以下疑问,例如: [1]交叉编译时的共享库是否需要放置于目标板中,如果需要放置在哪个目录中. [2]交叉编译时的共享库是否需要放置于宿主机中,如果需要放置于哪个目录中. [3]交叉编译时如何指定共享库 [4]程序运行时如何查找共享库 等等问题. 博文总结了使用共享库的一般方法,并通过一个例子说明问题.如果已经有了交叉编译好的共享库,可以从[2]开始,步骤[1]只是为了说明问题,捏造一个简单的共享库试图说

linux 文件系统笔记

文件格式: windows:PE linux:  ELF 文件系统: rootfs FHS:规定linux应该创建哪些目录 /下的目录结构: /boot: 系统启动相关的文件,如内核,initrd,以及 grub(bootloader) /dev :设备文件(例如:光盘,cdrom) 类型: 块设备:随机访问, 数据块 字符设备:线性访问, 以字节为单位 设备号:主设备号(major),次设备号(minor) /etc:  配置文件(绝大多数为纯文本格式) /home: 用户的家目录,默认为/h

linux学习笔记(一)-文件目录相关的命令&&文件通配符

一.几个命令概述 1.查看目录以及目录底下的文件:ls(-a显示隐藏文件:-d显示目录本身:-l显示详细内容:-R递归显示,即把子目录的文件也显示出来:-h以更加被人类理解的格式显示,比如显示文件大小的时候用M为单位显示:-i显示文件索引ID) 2.查看文件内容:cat,head,tail,less,more,tac cat:将文件连接起来,输出在屏幕上,可接多个文件(-E:显示隐藏的换行符:-n:显示出行号) head:默认查看文件的前10行(-n#:查看文件的前#行.空白行也是一行) tai