apache http可以访问https没权限_Linux网络服务Apache

这边建议点击右上角“···”找到调整字体为最小的那个,可舒服观看

一、Web的基础概念? 

    讲Apache之前我们先了解一下Web的基础概念HTML语言:超文本标记语言,使用html语言编写的文本叫超文本,“超文本”就是指页面内可以包含图片、链接,甚至音乐、程序等非文字元素。  

HTTP协议:超文本传输协议,HTTP是使用统一资源标识符(URL)来建立连接和传输数据。是一个基于TCP/IP通信协议来传递数据的协议,属于应用层协议。URL:统一资源定位符,统一资源定位符是对可以从互联网上得到的资源的位置和访问方法的一种简洁的表示,是互联网上标准资源的地址。URL格式:
http://www.gaodashuai.com:80/index.html

知识拓展:URI:统一资源标志符,URI与URL都是定位资源位置的,就是表示这个资源的位置信息,就像经纬度一样可以表示你在世界的哪个角落。URI是一种宽泛的含义更广的定义,而URL则是URI的一个子集,就是说URL是URI的一部分。

二、Apache是什么?

    f409e05fd5782732b753bf139a5206b2.png

      Apache是世界使用排名第一的Web服务器软件。它可以运行在几乎所有广泛使用的计算机平台上,由于其跨平台和安全性被广泛使用,是最流行的Web服务器端软件之一。它快速、可靠并且可通过简单的API扩充,将Perl/Python/php等解释器编译到服务器中。

      Apache有多种产品,可以支持SSL技术,支持多个虚拟主机。Apache是以进程为基础的结构,进程要比线程消耗更多的系统开支,不太适合于多处理器环境,因此,在一个Apache Web站点扩容时,通常是增加服务器或扩充群集节点而不是增加处理器。到目前为止Apache仍然是世界上用的最多的Web服务器,市场占有率达60%左右。数据解释一切,如下图(Statistics发布了由Netcraft提供的Web服务器市场的最新份额数据,并且细分出了“有多少网站在运行对应平台”、以及“实际Web服务器的数量”两个板块。)

42970b4c789bb6c9b4689cc366ee9afa.png

三、Apache服务器的搭建

1.相关文件保存位置

服务目录:

    /etc/httpd

配置文件位置:
    /etc/httpd/conf/httpd.conf网页数据位置:
    /var/www/html/日志文件位置:
    /var/log/httpd/

        访问日志:/var/log/httpd/access_log

        错误日志:/var/log/httpd/error_log

2.配置文件详解

/etc/httpd/conf/httpd.conf,一定要自己去看文件加深印象

如下是文件中针对主机环境的基本配置参数

f3072d46f8d7ef2306a8ca81ddbd7dcc.png

如下是文件中关于文档根目录及权限

2440d10588be864c7c59252a80730fcf.png

3.基本搭建

(1)做本地yum源,先要在虚拟机中上指定挂载光盘并连接

(2)cd /etc/yum.repo.d

         vim dvd.repo如下

01ea66cc808d2d9b44a56dbb3f80bf10.png

        创建一个挂载目录mkdir /iso        

        mount /dev/cdrom  /iso后挂载成功

        进行清源yum clean all

        进行构建元数据yum makecache       

        进行软件的安装yum -y install httpd

(3)将firewalld服务与SElinux通通关掉

    关闭防火墙
        systemctl stop firewalld
        systemctl disable firewalld
    关闭SELinux
        setenforce 0
        getenforce

(4) 我们进入/var/www/html写一个简单的个人信息的index.html的文件

e207a5aa1dead0bb8ce88798e220a0ef.png

01784a542bb3067c58e7c46f0c592e5e.png95b05844fe91b70bf3d5a90c51ce3bb2.png

    配置保存后重启服务systemctl restart httpd

    将虚拟机的IP地址写进浏览器中,会根据你的主配置默认的找到这个页面

2eecfb123a2caf6dfc5bdb32aba4d26e.png

四、常规设置Apache服务器实列

1.设置文档根目录和首页文件的实例

    默认情况下,网站的文档根目录保存在/var/www/html中,如果想把保存网站的文档根目录放在另一个篮子里并且将首页文件修改为myweb.html,那该如何操作呢?

    首先呢,文档的根目录是一个较为重要的设置,一般来说,网站上的内容都保存在文档根目录中。在默认情况下,处理记号和别名将改指它处以外,所有的请求都从这里开始。而打开网站时显示的页面机该网站的首页(主页)。首页的文件名默认DirectoryIndex字段来定义的,在默认情况下,Apache的默认首页名称为index.html。当然也可以根据实际情况进行更改。

(1)创建一个目录来作为接下来修改配置文件的指定文档根目录,并创建一个首页文件myweb.html

d2489416405308be114ae34ab2330eb0.png

(2)去修改httpd主配置文件,将第119行用于定义网站数据的保存路径的参数DocumentRoot修改为/Gyq/www,同时将第124行用于定义目录权限的参数Directory后面的路径也修改为/Gyq/www,将164行修改为DirectoryIndex myweb.html index.html 在vim文本编辑器中显示行号,按“:”进入底行模式,输入set number(也可以使用在底行模式下,使用"/"进行字符串的查找)

vim /etc/httpd/conf/httpd.conf

修改前:

a7aac315d043cbbbb48a454b0909ea54.png

修改后:

d82cb0a1566f5df1a2eab091c7622da1.png

9770bbe05745768f79fd12a78a682857.png

(3)重启httpd服务,关闭防火墙,修改SElinux为Permissive。

(4)重启成功后,可以使用windows主机的浏览器去访问地址,区别于3中的访问。

8185d5f0582ed7e3bc83f9f67173312c.png

2.用户的个人主页实例

    如果我们想实现一个用户的个人主页,就拿腾讯的qq空间个人页面来说,拥有个人页面的好处,是为了更容易去管理属于用户自己的空间。Apache可以实现用户的个人主页。Client访问个人主页的URL地址的格式为:http://域名/~username

810bd84a70117f03b10162dd9615838f.png

    其中,"~uersname"在利用Linux系统中Apache服务器来实现时,是需要该用户存在于Linux系统(一样的,你要是没有一个QQ账户,哪能去用一个QQ空间嘛)

(1)首先去创建一个用户,为其设置密码并使其他用用户具有r和x的权限。

90ffe095f671ce53c84e10903cc7a021.png

(2)创建存放用户个人空间的目录,并创建个人主页的默认首页文件

318d2f3eb09cf8480d7f84af37c60953.png

(3)进行配置文件(/etc/http/conf.d/userdir.conf)的修改

   17行的UserDir disabled参数使用"#"去注释掉,表示让httpd服务开启个人主页功能。同时,把24行的UserDir public_html前的"#"去掉(这里的public_html对应我们创建的用户的默认首页目录,如果你的默认首页目录名写的别的,那你就修改这里的public_html为你的默认首页目录名)

vim /etc/httpd/conf.d/userdir.conf

修改前:

388e7febddf0a215f3001990dee56392.png

修改后:

3c9b76573a95b93f5f312b11c40f66f7.png

(4)重启httpd服务,关闭防火墙,修改SElinux为Permissive。

(5)还是用windows主机的浏览器去做测试

9501ccfa6c6905d36bdc149c146a6e6c.png

3.虚拟目录的实列

   已知我们把web应用放在Apache默认的hdocs目录下,Apache会自动的管理它。若我们想把web应用放在其他目录下, Apache仍然能够访问它,则需要用到Apache的虚拟目录功能。

 虚拟目录是一个位于Apache服务器主目录之外的的目录,不包含在Apache服务器主目录中,但在访问Web的用户看来,它在位于主目录中的子目录是一样的,每一个虚拟目录都有一个别名,Clinet可以通过此别名来访问虚拟目录。

由于每个虚拟目录都可以分别设置不同的访问权限。所以非常适合不同用户对不同目录拥有不同权限的情况。

  在Apache服务器的主配置问http.conf中,通过Alias指令去设置虚拟目录。

(1)创建一个物理的目录并在其之下创建虚拟的目录中的默认首页文件

        而后去修改其他用户具有r和x权限

3101f4a543fe9dfa8cb23cc53f846dbe.png

(2)修改/etc/httpd/conf/httpd.conf文件,插入以下语句

761abbd53a1d58b288e7783ed5950bc9.png

(3)重启httpd服务,关闭防火墙,修改SElinux为Permissive。

(4)继续使用windows主机的浏览器去做测试

abf48df9cf384aca2b808dcad352d8e8.png

五、虚拟主机的添加(重点)

    虚拟主机在一台Web服务器上,可以为多个独立的IP地址、域名或端口号提供不同的Wcb站点。对于访问量不大的站点来说,这样做可以降低单个站点的运营成本。为了易于理解,我们使用图形化界面那

1.基于IP地址的虚拟主机
    基于IP地址的虚拟主机的配置需要在服务器上绑定多个IP地址,然后配置Apache,把多个网站绑定在不同的IP地址上,访问服务器上不同的IP地址,就可以看到不同的网站。

(1)单击“应用程序" -→“系统工具"→“设置" → “网络" ,单击“+”。这样可以在一块网卡上配置多个IP地址,当然也可以直接在多块网卡上配置多个IP地址。

5263c6aa5741e235cb6bb2d7e893999b.png

8ab7b470193429c6e77e864228a51167.pngd5e5f516ce8e1707b7d7726c757ec362.png

(2)分别创建/var/www/ip1和/var/www/ip2两个主目录和默认文件。

9f55fca1f50a8c3f61ca5a99d9092456.png

(3)添加配置文件/etc/httpd/conf.d/vhost.conf文件,向其中写入如下内容。

02be75121cee074d0e0dbc2e1f960cd0.png

(4)重启httpd服务,关闭防火墙,修改SElinux为Permissive

(5)继续使用windows主机的浏览器进行测试。

fcec06631458b44948722f09ebf6b706.pnge5eb1cb111f8740ccb3add97d4434d7c.png

(6)若是访问httpd服务程序显示的时默认首页面。尝试访问http://192.168.30.200/index.html页面时,页面中显示“Forbidden,You don't havepermission to access /index.html on this server."

那么便是因为主配置文件里没有设置目录权限所致,解决方法便是在/etc/httpd/conf/httpd.conf中添加有关两个网站目录权限的内容。

249efbbb34e55417f6c8380b94259e1e.png

2.基于域名的虚拟主机

    基于域名的虚拟主机的配置只需服务器有一个 IP地址即可,所有的虚拟主机共享同个IP,各虚拟主机之间通过域名进行区分。
   要建立基于域名的虚拟主机,DNS服务器中应建立多个主机资源记录,使它们解析到同一个IP地址。
(1)分别创建/var/www/smile和/var/www/long两个主目录和默认文件

2a9975a72dcbefafdd6e769aab0069e8.png

(2)修改httpd.conf文件,添加目录权限内容

4c9a0391fe76d76d5421fad26306c115.png

(3)修改/etc/httpd/conf.d/vhost.conf文件。

9ef5c3abfab334f4bd77faf79dafdc9e.png

(4)重启httpd服务,关闭防火墙,修改SElinux为Permissive

(5)安装DNS服务,为DNS配置正向区域配置文件,可参考之前我写的DNS篇。

be9193589f6e7a6880dc82165801d8ca.png

(6)继续使用windows主机的浏览器测试

首先要将主机的DNS配置为DNS服务器的IP

74222dad432801919d7d5cd2c007fd9c.png

在进行URL的输入进行测试

3a248991a45ab3964aa9c3d53bb5c89d.png

a4ac191a91ba0f258c7bb5d5f0c122e3.png

3.基于端口的虚拟主机

    基于端口号的虚拟主机的配置只需服务器有一个IP地址即可,所有的虚拟主机共享同、个IP,各虚拟主机之间通过不同的端口号进行区分。在设置基于端口号的虚拟主机的配置时需要利用Listen语句设置所监听的端口。

(1)分别创建/var/www/8088和/var/www/8089两个主目录和默认文件

d93dc692b09c7556cf6e7904829c890b.png

(2)修改主配置文件/etc/httpd/conf.d/httpd.conf2ff9eea52c636219a856a2ec29a0c2f7.png

(3)修改/etc/httpd/conf.d/vhost.conf文件,在这里我们可以沿用域名,但是为了方便区分端口号只配置是一个域名就好了

b7af523806fa34523dfda631e5a07350.png

(4)重启httpd服务,关闭防火墙,修改SElinux为Permissive

(5)继续使用windows主机的浏览器测试

b7154cb18bbc52140fcfe2eaac013c13.png5e43c59568a1deaa43e710ec78fff2ba.png

(6)这里我们是直接关闭的firewall,但在生产环境中,firewall的策略还是很重要,有兴趣可以自己去深究一哈

六、小高有话说

   关于Apache服务器配置还有很多,还有httpd服务的各类参数设置(网页超时设置,客户端连接数限制,设置管理员邮箱和网络编码设置等等),学海无涯啊,同志仍需努力。

这里附上配置与管理Web服务器的学习视频:http://www.proedu.com.cn/web/shareVideo/index.action?id=1049774&ajax=1

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值