您的位置:首页 > 理论基础 > 计算机网络

Linux下Apache服务:部署、基础信息、访问操作、指定用户、虚拟站点、支持语言、https认证等

2019-08-13 01:13 926 查看
版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。 本文链接:https://blog.csdn.net/Leslie_qlh/article/details/99363147

Apache服务

文章目录

  • 4.Apache的基础信息:
  • (2)修改默认发布文件:
  • (3)修改默认发布目录(120行左右):
  • 5.访问控制
  • 6.指定用户访问
  • 7.虚拟站点
  • 8.php和cgi语言
  • 9.WSGI语言
  • 10.Apache的ssl
  • 11.自签名证书
  • 12.网页重写

  • Apche,企业中常用的web服务,用来提供http://(超文本传输协议)。

    1.查看

    curl -I  可以查看域名信息
    
    curl -I www.baidu.com
    curl -I www.qq.com
    curl -I www.163.com

    2.Apache的安装部署

    yum install -y httpd		安装httpd
    yum install -y httpd-manual	安装manual
    systemctl start httpd		开启http服务
    systemctl enable httpd		设置开机启动
    systemctl start firewalld	开启防火墙
    firewall-cmd --permanent --add-serbice=http	在防火墙添加http服务
    firewall-cmd --reload		立即生效
    firewall-cmd --list-all		查看是否添加


    3.相关目录:

    /var/www/html			apache的根目录,是默认发布目录
    /var/www/html/index.html	apache的默认发布文件
    测试:
    vim /var/www/html/index.html
    <h1>Hello Bye~</h1>


    在浏览器上访问:
    http://172.25.254.74
    http://172.25.254.74/manual

    4.Apache的基础信息:

    主配置目录:	/etc/httpd/conf
    主配置文件:	/etc/httpd/conf/http.conf
    子配置目录:	/etc/httpd/conf.d/
    子配置文件:	/etc/httpd/conf.d/*.conf
    默认发布目录:	/var/www/html
    默认发布文件:	index.html
    默认端口:	80
    默认安全上下文:	httpd_sys_content_t
    程序开启默认用户:	apache
    apache日志:	/etc/httpd/logs/*

    (1)修改默认端口:

    vim /etc/httpd/conf/httpd.conf
    Listen 8080		修改默认端口为8080(在43行左右)

    firewall-cmd --permanent --add-port=8080/tcp	在防火墙添加8080端口
    firewall-cmd --reload		立即生效

    测试:

    在浏览器访问172.25.254.74:8080

    (2)修改默认发布文件: 3ff7

    默认发布文件就是访问apache时没有指定文件名时默认访问的文件,此文件可以指定多个,但是有访问顺序。

    vim /etc/httpd/conf/httpd.conf
    DirectoryIndex westos index.html	当westos不存在时就访问index.html(164行左右)


    (3)修改默认发布目录(120行左右):

    DocumentRoot "/westos/html"
    
    <Directory "/westos">
    AllowOverride None
    
    # Allow open access:
    
    Require all granted
    </Directory>


    5.访问控制

    vim /var/www/html/index.html			修改默认发布文件内容
    <h1>The Bset HAO !!!</h1>

    vim  /etc/httpd/conf/httpd.conf
    
    <Directory "/var/www/html/">
    Order Allow,Deny			顺序,先读allow,再deny
    Allow from All
    Deny from 172.25.254.28		读到deny就会覆盖allow
    </Directory>
    
    systemctl restart httpd			重启服务

    测试:

    分别使用172.25.254.28以及另一个ip访问172.25.254.74/index.html尝试

    6.指定用户访问

    htpasswd -cm westosuser admin		第一次添加用户并指定密码需要加c参数
    
    htpasswd -m westosuser admin1		添加用户并指定密码


    vim /etc/httpd/conf/httpd.conf		编辑配置文件
    
    <Directory "/var/www/html/westos">
    AuthUserFile   /etc/httpd/conf/westosuser
    AuthType       basic				类型
    AuthName       "Please input your name and password !!!"	名字(界面显示的信息)
    Require user    admin				允许的用户
    
    (Require        valid-user)			允许所有用户
    </Directory>


    测试:


    7.虚拟站点

    vim /etc/hosts    			配置解析
    172.25.254.74 www.westos.com news.westos.com music.westos.com

    systemctl restart httpd			重启
    mkdir /var/www/virtual/news/html -p
    mkdir /var/www/virtual/music/html -p			建立两个默认发布目录
    vim /var/www/virtual/news/html/index.html		编辑news	默认发布文件
    <h1>news.westos.com</h1>

    vim /var/www/virtual/music/html/index.html		编辑music默认发布文件
    <h1>music.westos.com</h1>

    cd /etc/httpd/conf.d/
    
    vim default.conf					编辑默认站点发布的配置文件
    <VirtualHost _default_:80>			默认站点发布端口
    DocumentRoot  /var/www/html		默认站点发布目录
    CustomLog    logs/default.log combined		站点日志为combined混合日志
    </VirtualHost>
    cd /etc/httpd/conf.d/
    
    vim news.conf						编辑news引导文件
    <VirtualHost *:80>				发布端口
    ServerName    news.westos.com		站点域名
    DocumentRoot  /var/www/virtual/news/html		默认发布目录
    CustomLog    logs/news.log combined	站点日志为combined混合日志
    </VirtualHost>


    vim music.conf						编辑music引导文件
    <VirtualHost *:80>			发布端口
    ServerName      music.westos.com		站点域名
    DocumentRoot    /var/www/virtual/music/html					默认发布目录
    Customlog       logs/music.log combined	站点日志为combined混合日志
    </VirtualHost>
    <Directory "/var/www/virtual/music/html">
    Require all granted		授权
    </Directory>

    systemctl restart httpd 重启

    **浏览器可访问:www.westos.com news.westos.com music.westos.com **


    8.php和cgi语言

    vim /var/www/html/php					编辑php文件
    <?php
    phpinfo();
    ?>

    yum install -y php					安装php
    mkdir /var/www/html/cgi					建立cgi目录
    cd /var/www/html/cgi
    vim index.cgi						编辑cgi默认发布文件
    #! /usr/bin/perl
    print "Content-type: text/html\n\n";
    print `date`;						输出时间

    chmod 775 index.cgi					赋予权限
    
    /.index.cgi						执行命令测试

    vim /etc/httpd/conf.d/default.conf			编辑指向文件
    
    <Directory "/var/www/html/cgi">
    Options +ExecCGI
    AddHandler cgi-script .cgi
    </Directory>
    
    systemctl restart httpd					重启服务

    测试:访问172.25.254.74/index.php

    9.WSGI语言

    mkdir /var/www/wsgi			建立wsgi目录
    cd /var/www/wsgi/
    下载script.wsgi文件
    cd /etc/httpd/conf.d/
    vim vhost.conf				编辑配置文件
    <VirtualHost *:80>
    ServerName www.westoswsgi.com
    WSGIScriptAlias / /var/www/wsgi/script.wsgi
    </VirtualHost>

    yum install mod_wsgi -y		安装wsgi

    vim /etc/hosts				添加解析
    172.25.254.74 www.westoswsgi.com

    用浏览器访问www.westoswsgi.com

    10.Apache的ssl

    https(全称:Hyper Text Transfer Protocol over Secure Socket Layer),是以安全为目标的http通道,简单讲是http的安全版。

    yum install -y mod_ssl
    systemctl restart httpd

    浏览器访问:https:172.25.254.254.74

    11.自签名证书

    yum install -y crypto-utils
    
    genkey www.westos.comg			进入认证设置界面

    进入加密页面








    cd /etc/httpd/conf.d
    vim ssl.conf								编辑认证文件
    SSLCertificateFile /etc/pki/tls/certs/www.westos.com.crt		认证锁
    
    SSLCertificateKeyFile /etc/pki/tls/private/www.westos.com.key	认证密钥
    
    systemctl restart httpd						重启

    测试机:
    关闭防火墙,并对浏览器添加认证:


    vim /etc/hosts
    172.25.254.74 www.westos.com		添加解析

    访问www.westos.com

    12.网页重写

    cd /etc/httpd/conf.d/
    vim login.conf						编辑配置文件
    <VirtualHost *:443>
    ServerName    login.westos.com
    DocumentRoot  /var/www/virtual/login/html
    CustomLog     logs/login.log combined
    SSLEngine on
    SSLCertificateFile /etc/pki/tls/certs/www.westos.com.crt
    SSLCertificateKeyFile /etc/pki/tls/private/www.westos.com.key
    </VirtualHost>
    <Directory "/var/www/virtual/login/html">
    Require all granted
    </Directory>

    vim /etc/hosts					添加解析
    172.25.254.121 login.westos.com

    mkdir -p /var/www/virtual/login/html

    vim /var/www/virtual/login/html/index.html	编辑默认发布文件
    <h1>login page</h1>

    systemctl restart httpd 重启

    vim login.conf					编辑配置文件
    
    <VirtualHost *:80>
    ServerName    login.westos.com
    RewriteEngine On
    RewriteRule   ^(/.*)$ https://%{HTTP_HOST}$1 [redirect=301]
    </VirtualHost>

    #^(/.*)$表示客户在浏览器中输入的所有字符
    #$1表示^(/.*)$的值
    #redirect=301表示转换时永久的
    #%{HTTP_HOST}表示客户请求主机
    内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
    标签: 
    相关文章推荐