apache的基本使用

时间:2024-05-20 13:37:42

一、认识apache

       apache企业中常用的web服务,也是世界上使用排名第一的web服务器,用来提供http://(超文本传输协议)。

二、apache的安装部署

        1、yum install httpd -y   :下载并安装apache服务器(在linux系统的镜像中有安装包)

              apache的基本使用

              apache的基本使用

2、systemctl start httpd :打开http服务

apache的基本使用

3、为了方便使用,需要将其设定为开机自动启动:systemctl enable httpd

apache的基本使用

4、如果其他主机通过apache访问时,需要关掉防火墙:systemctl stop firewalld

apache的基本使用

5、安装部署好后即可使用:在浏览器中输入http://主机id进行访问

apache的基本使用

6、apache有手册可以使用,需要自行下载:yum install httpd-manual

apache的基本使用

7、手册也可以通过apache访问,但如果该手册的文件不在/var/www/html下就不能被访问,此时需要将其放置该目录下

apache的基本使用

apache的基本使用

访问:http://主机ip/manual

apache的基本使用

三、apache基本信息

1、主配置目录:/etc/httpd/conf
2、主配置文件:/etc/httpd/conf/httpd.conf
3、子配置目录:/etc/httpd/conf.d
4、子配置目录:/etc/httpd/conf.d/*.conf    ##*表示所有##
5、默认发布目录:/var/www/html
6、默认发布文件:index.html ##在被访问时,若未指定访问位置,则默认访问该文件内容

如:先建立一个index.html文件 :vim /var/www/html/index.html

apache的基本使用apache的基本使用

然后再通过http访问该主机时就会读取该文件的内容

apache的基本使用

7、默认端口:80
8、默认安全上下文:httpd_sys_content_t
9、程序开启默认用户:apache
10、apache
日志:/etc/httpd/logs/*

四、apache基本信息的更改

1、修改默认端口:在主配置文件/etc/httpd/conf/httpd.conf中更改

apache的基本使用apache的基本使用

默认为80,可以直接修改为随意正常端口,如8080。修改后需要重启服务才能生效

   apache的基本使用

  更改后在访问时必须在地址后加上“:8080”,否则无法访问

    apache的基本使用

        加上8080以后便可以访问!!!

             apache的基本使用

    注意:更改实验后建议重新更改回去,便于使用!!!

2、修改默认发布文件

              apache的默认文件可以有多个,需要在主配置文件中增加!!

              apache的基本使用

       注意:默认文件的访问顺序为从前到后,如果前面的文件没有,则访问后面的文件

     测试:先建立一个test.html文件并输入内容

             apache的基本使用apache的基本使用

      然后删除原有的index.html文件再访问该主机

            apache的基本使用

            apache的基本使用

          如上图,没有index.html文件时访问test.html文件!!!!

3、修改默认发布目录

              在主配置文件中可修改默认发布目录

              apache的基本使用

             将默认发布目录修改为/www/html,其中Directory模块是赋予新的发布目录的权限!!

             注意:修改的发布目录必须系统存在,如果不存在需要手动建立,否则访问不到!!

              测试:在发布目录下建立一个发布文件并输入内容,然后用浏览器访问测试

              apache的基本使用

      apache的基本使用

             apache的基本使用

    注意:在测试完成后,为了在以后的使用中不出错,需要将设置恢复!!!

    注意:在修改后如果无法访问时,需要将目录的安全上下文进行修改

                       semanage fcontext -a -t httpd_sys_content_t'/www(/.*)?'

                       restorecon -RevvF /www/

                       如果selinux中设置为disabled,则无需进行安全上下文的设定

            注意:所有对配置文件的更改操作后,需要重新启动服务才能生效!!!!!

四、apache站点的建立

        1、先建立各站点的默认发布目录

              apache的基本使用

2、然后在子配置目录中建立各站点的配置文件:文件必须以.conf结尾!!!

              未指定访问站点时的配置文件:vim adfault.conf

              apache的基本使用

              apache的基本使用

             内容解释:

 <VirtualHost _default_:80>    ##名称及访问接口
          DocumentRoot"/var/www/html"   ##默认发布目录   
          CustomLog   "logs/www.westos.com.log"combined##报错文件,combined表示四种报错级别
</VirtualHost> 

           指定站点linux.westos.com的配置文件:vim linux.conf

    apache的基本使用

            apache的基本使用

           ServerName表示站点名称,Directory模块为设置权限!!

           指定站点c.westos.com的配置文件:vim c.conf

            apache的基本使用

    apache的基本使用

   注:内容和linux的配置文件内容几乎相同,在建立时可以先复制再更改名称即可!!

3、在各站点的发布目录下建立发布文件

              apache的基本使用

      apache的基本使用

      apache的基本使用

      apache的基本使用

4、测试:

              测试前需要在测试主机上设置站点的本地解析:vim /etc/hosts

              apache的基本使用

        apache的基本使用     

              访问www.westos.com时应该访问/var/www/html下的发布文件

               apache的基本使用

      访问linux.westos.com时应该访问/var/www/virtual/linux.westos.com/html下的发布文件

               apache的基本使用

      访问c.westos.com时应该访问/var/www/virtual/c.westos.com/html下的发布文件

       apache的基本使用

五、apache的访问控制

1、针对于主机的访问:在配置文件中写入控制模块,允许访问和不允许访问的主机均可以设置!!

               apache的基本使用

       apache的基本使用

              模块解释: 

             <Directory "/var/www/html/test">      ##被控制的目录
                        Order allow,deny                    #
读取的顺序#
                        Allow from 172.25.20.250                          #
允许谁访问
                        Deny from all    #不允许谁访问    

            </Directory>

           注意:系统在读取文件时,Order后的顺序决定了读取顺序,先读取的内容会被后读取的内容中相同的内容覆盖掉!!

           按上图设定,后读取的Deny内容为全部主机,则会将先读取的allow中的172.25.20.250主机覆盖掉,则该主机不能访问,如下:

              apache的基本使用

 如果改变了读取顺序,先读Deny,后读Allow则可以访问:

             apache的基本使用

             apache的基本使用

2、以用户的方式访问的控制

             先建立用户的目录

             apache的基本使用

     建立用户的密码文件:htpasswd -cm /etc/httpd/userpass admin

             apache的基本使用

             添加新的用户密码文件:htpasswd -m /etc/httpd/userpass admin1

              apache的基本使用

     注意:在新添加时,命令的参数中不能有“c”,否则会将之前建立的内容全部覆盖

      apache的基本使用

     在配置文件中写入模块进行设定,与apache联系起来

               apache的基本使用

              模块内容解释:

      <Directory "/var/www/html/admin">   #管理的文件目录
                        AuthUserFile /etc/httpd/userpass       #
密码文件
                           AuthName "Please input your nameand passwd"  #
访问时的提示语
                           AuthType basic    #
最基本的验证方式
                          #Require user admin   #
只允许admin用户通过验证进行访问
                          Require valid-user    #
允许所有有效用户通过验证后进行访问
              </Directory>

             测试:只允许admin2用户进行访问:

       apache的基本使用

       apache的基本使用

       apache的基本使用

    apache的基本使用

         允许所有用户进行访问:

          apache的基本使用

 apache的基本使用

 apache的基本使用

六、apache支持的语言

1、html语言,之前apache的默认发布文件就是html语言的脚本,所有在此不进行验证!!

2、php语言

      在使用php语言的脚本作为发布文件时,需要先下载php服务:yum install php -y

               apache的基本使用

      编辑php语言脚本放在/var/www/html目录下:

                apache的基本使用

                 apache的基本使用

        此内容为php语言;用http可以访问该文件并显示语句的输出

                apache的基本使用

3、cgi语言

              先建立一个cgi语言脚本的目录:mkdir /var/www/html/cgi 

              apache的基本使用

      用cgi语言编辑一个脚本文件

              apache的基本使用

     内容表示动态显示系统当前的时间,此脚本应该放在/var/www/html/cgi目录下

              apache的基本使用

    需要给脚本加上执行权限才能运行:chmod +x /var/www/html/cgi/index.cgi

    然后再运行一下检测脚本是否正确:

            apache的基本使用

    然后在配置文件中写入该模块:

    apache的基本使用

            apache的基本使用

      确保该文件可以被访问到,该模块的内容可以在apache手册中查看

              apache的基本使用

      此时可用http访问cgi脚本:

             apache的基本使用

七、https

        https是用户在通过http访问时数据不会被**,简单来说就是http的安全版。

        httos的默认访问端口为443

        部署https:

         yum install mod_ssl -y :生成443端口以及https服务

         apache的基本使用

yum install crypto-utils -y :生成产生加密证书的命令

apache的基本使用

安装完成后即可运行产生证书的命令:genkey 网站名称

         运行后会产生如下界面进行生成:

         apache的基本使用

        画圈部分分别为加密的key和加密证书的文件及其位置,用tab键选择Next进行下一步

        apache的基本使用

       此步为选择key文件的大小,建议选择1024适中,太大速度较慢!!然后选择Next下一步

        apache的基本使用

此步为收集数据,速度较慢,此时需要打开一个新的shell并在shell命令行随机输入内容,速度会迅速加快!!

         apache的基本使用

该步骤为是否向CA机构发送,选择NO,不发送!!!!

         apache的基本使用

建议不写入内容,直接选择Next进行下一步,否则会很慢!!!

apache的基本使用

填写网站的基本信息,依次为国家、省份、所在城市、公司名称!!

         Next即可创建成功!!!

 创建成功后,系统会显示https的基本信息

         apache的基本使用

https的配置文件会自动在/var/httpd/conf.d/下生成,为ssl.conf文件

        vim /etc/httpd/conf.d/ssl.conf

apache的基本使用

       此为https的服务端口

        apache的基本使用

此为https的密码证书文件和key文件!!

证书和key生成后,即可在浏览器中通过https访问该主机

         apache的基本使用

    如上,第一次访问时需要下载安全证书才能进行访问,选择I Understand the Risks

               apache的基本使用

选择Add Exception进行添加

                        apache的基本使用

先点击Get Certificate再点击Confirm即可进入

                        apache的基本使用

点击这个小锁子可以查看证书

                        apache的基本使用

                        点击View

                        apache的基本使用

八、设定https虚拟主机

        1、建立虚拟主机发布目录及文件

              apache的基本使用

      apache的基本使用

2、建立虚拟主机的配置文件

              apache的基本使用

其中:

               apache的基本使用

这三行内容可以在ssl.conf文件中找到,可以直接复制过来!!表示服务开启!!!

 设定好配置文件后需要重启网络才能生效!!

                 apache的基本使用

然后用https访问该虚拟主机,测试搭建是否成功

apache的基本使用

界面表示可以访问到,下载证书即可查看到发布文件的内容

apache的基本使用

为了使用户用http访问时自动转换成https访问,需要在配置文件中写入转换模块,即将80端口访问该主机转化为443端口访问!!

                apache的基本使用

      第12至16行为转化模块。

                      第15行语句含义:

                      apache的基本使用

 重启服务才能生效

                  apache的基本使用

测试:用http访问该站点,自动转换为https访问:

                            apache的基本使用apache的基本使用