一台服务器上多个网站同时运行,基于域名访问,IP访问,端口访问。

http服务使用的端口是80 HTTPS使用的是443

协议名称://机器地址:端口号/路径名/文件名

协议名称—— 所使用的访问协议。如http、ftp。

机器地址—— 数据所在的机器,IP地址/域名

端口号—— 请求数据的数据源端口(可省略)

路径名—— 数据所在的相对路径

文件名—— 请求数据的文件名

web组件分为客户端和服务器

服务器:主要是提供服务功能

客户端:主要是发送请求给服务器

比如百度公司,服务器在百度公司主要功能为:

那么web浏览器也就是客户端主要功能就是:

比如200就是成功发送请求并被服务器成功接收和处理

404 页面不存在

443 权限不够

500 服务器配置错误

Apache默认配置:

默认情况下没有apache这个用户,当虚拟机配置完apache服务后用户自动生成,且属于系统用户。

ping通yum仓库后使用yum命令下载安装httpd服务

可以看一下系统已经自动创建apache用户。因为它不是root用户所以权限很小,可以用的命令也很少,当中病毒时不会对主机造成很大的影响他只能做一些apache用户权限内的事情。配置文件时尽量使服务器的用户权限最小化。

安装完httpd服务后需要配置httpd服务,比如开机启动enable等。

systemctl start httpd 启动httpd服务,查看httpd服务和80端口状态。

80端口:

设置开机启动:

在var/www/html下可以设置网站主页 但是配置文件中默认打开的是index.html ,如果网站主页文件名字不是index.html的话,需要在配置文件里把index.html更改为自己重命名的文件名才可以。这样可以不需要输入主页文件名称就可以直接打开网站主页。如果目录也由 /var/www 换为了其他目录,不仅要将配置文件中指定的访问目录更改为相应目录,同时要将相应目录的权限和所属组主进行更改并且重启生效更改后的目录权限。

比如下面我们已经在html目录下写好主页文件

那么我们在应用程序中的浏览器输入IP地址(192.168.2.100也可以加上端口,192.168.2.100:80,或者http://localhost,当然这里用127.0.0.1也是可以的,他代表虚拟机本身,比如ping 127.0.0.1和ping localhost是一样的)就可以显示主页文件了(这里最后不加/index.html也是可以的,因为配置文件里已经写好了)。

如果想要修改默认文件名,需要更改httpd.conf文件中的配置,将index.html改成自己想设置的名字。改完之后需要重启httpd服务才会生效。

有关httpd服务的文件

关于httpd.conf配置文件里的参数解释

apache服务程序配置文件分为3种类型:注释行信息、全局配置、区域配置

练习1 将网站数据放在/home/wwwroot目录

第1步:编辑Apache服务程序的主配置文件,将其做如下图所示修改。

第2步:建立网站数据目录:

第3步:创建首页文件:

第4步:重新启动Apache服务:

第5步:查看首页

 一、基于IP访问网站

首先用nmtui命令给ens33网卡添加多个IP

 配置完后重启网卡  (在启用链接里禁用 再激活一次)

分别ping刚才配置的3个IP(101、102、103)检查是否无误

接下来分别创建3个网站数据目录

mkdir -p /home/wwwroot/101

mkdir -p /home/wwwroot/102

mkdir -p /home/wwwroot/103

并在其中写入主页文件

echo “192.168.2.101” > /home/wwwroot/101/index.html

echo “192.168.2.102” > /home/wwwroot/102/index.html

echo “192.168.2.103” > /home/wwwroot/103/index.html

接下来我们要配置httpd.conf文件(首先也可以备份一下 cp /etc/httpd/conf/httpd.conf  /etc/httpd/conf/httpd.conf.bak)

vim /etc/httpd/conf/httpd.conf

在配置文件中添加下图内容(其余3个基本和下图一样,只需改102所在的地方)

 验证:应用程序 一> 火狐浏览器 一> http://192.168.1.101(102、103)

 二、基于域名访问

 (首先把httpd.conf这个配置文件里的内容还原为初始默认状态,可以恢复快照或者把刚才的备份的配置文件覆盖回去)

按下图修改 vim /etc/hosts 文件内容

每行只能写一条

 创建3个网站数据目录并写入主页文件:

mkdir  -p  /home/wwwroot/{www,bbs,ftp}

在这三个网站数据目录中写入主页文件,内容为该网站的域名

echo   “www.zh1z3ven.com” >  /home/wwwroot/www/index.html

echo   “bbs.zh1z3ven.com” >  /home/wwwroot/bbs/index.html

echo   “ftp.zh1z3ven.com” >  /home/wwwroot/ftp/index.html

 配置httpd服务的配置文件 /etc/httpd/conf/httpd.conf

按下图修改(剩下两个域名配置同理,只需把www的地方改为bbs或ftp即可)

修改完配置后重启httpd服务

验证:还是打开浏览器,依次输入三个域名进行搜索即可

三、基于端口访问

(如果做了上面实验更改过配置文件的注意还原回去配置文件或者直接恢复快照)

先创建三个网站数据目录并写入主页文件:

mkdir -p /home/wwwroot/{6666,7777,8888}

写入主页文件:

echo "port:6666" > /home/wwwroot/6666/index.html

echo "port:7777" > /home/wwwroot/7777/index.html

echo "port:8888" > /home/wwwroot/8888/index.html

 修改配置文件  vim /etc/httpd/conf/httpd.conf

如下图

修改完后重启服务

验证:

(如果出现firefox给错误提示:此网址使用了一个通常用于网络浏览以外目的的端口。出于安全原因,Firefox 取消了该请求

解决办法:https://jingyan.baidu.com/album/4e5b3e19eb921991901e24f7.html?picindex=5

apache基础,apache环境搭建,apache的3种使用方式(IP、端口、域名)的更多相关文章

  1. Ubuntu+Apache+PHP+Mysql环境搭建(完整版)

    Ubuntu+Apache+PHP+Mysql环境搭建(完整版) 一.操作系统Ubuntu 14.04 64位,阿里云服务器 二.Apache 1.安装Apache,安装命令:sudo apt-get ...

  2. Lamp(linux+apache+mysql+php)环境搭建

    Lamp(linux+apache+mysql+php)环境搭建 .安装apache2:sudo apt-get installapache2 安装完毕后.执行例如以下命令重新启动apache:sud ...

  3. Apache Cordova开发环境搭建(二)VS Code

    原文:Apache Cordova开发环境搭建(二)VS Code 版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/u011127019/articl ...

  4. Apache Cordova开发环境搭建(一)-Visual Studio

    原文:Apache Cordova开发环境搭建(一)-Visual Studio 一.使用Visual Studio开发Apache Cordova手机App 1.版本要求,Visual Studio ...

  5. Ubuntu+Apache+PHP+Mysql环境搭建(完整版)(转)

    http://www.2cto.com/os/201505/401588.html Ubuntu+Apache+PHP+Mysql环境搭建(完整版) 一.操作系统Ubuntu 14.04 64位,阿里 ...

  6. Centos 基础开发环境搭建之Maven私服nexus

    hmaster 安装nexus及启动方式 /usr/local/nexus-2.6.3-01/bin ./nexus status Centos 基础开发环境搭建之Maven私服nexus . 软件  ...

  7. php学习笔记1--开发环境搭建:apache+php+mysql

    php开发环境搭建:apache + php + mysql1.下载apache,php及mysql安装包2.安装apache:下载的apache若是.msi可直接双击,按指示一步一步安装:(若操作系 ...

  8. WAMP(Windows+Apache+Mysql+PHP)环境搭建

    学习PHP已经有一段时间,一直没有写过关于开发环境搭建的笔记,现在补上吧,因为安装配置的步骤记得不是很清楚,借鉴了一些别人的经验,总结如下: 首先去官方网站下载各个软件,下载需要的版本: Apache ...

  9. Linux CentOS 6.5 + Apache + Mariadb + PHP环境搭建

    Web自动化测试-服务端测试环境部署 by:授客 目录 一. 二. 三. 四. 五. 六. 七. 八. 九. 十. 操作系统环境:CentOS 6.5-x86_64 下载地址:http://www.c ...

  10. Linux测试环境搭建apache+mysql+php

    Linux Red Hat Enterprise Linux Server release 5.4 (Tikanga) Kernel \r on an \m Apache +Mysql+php 搭建准 ...

随机推荐

  1. 全文搜索引擎 elasticsearch.net

    原文:https://www.cnblogs.com/lonelyxmas/p/10767436.html

  2. JavaScript——正则匹配、正则提取、正则替换

    正则匹配 // 匹配日期 var dateStr = '2015-10-10'; var reg = /^\d{4}-\d{1,2}-\d{1,2}$/ console.log(reg.test(da ...

  3. JSTL获取list的大小

    转自:https://blog.csdn.net/buster2014/article/details/45789647 JSTL获取list的大小,jstl获取list 的长度,EL表达式获取lis ...

  4. javascript跨浏览器操作xml

    //跨浏览器获取xmlDom function getXMLDOM(xmlStr) { var xmlDom = null; if (typeof window.DOMParser != 'undef ...

  5. 【记录】jd-gui解析class文件 报INTERNAL ERROR

    用GUI查看class文件时候出现INTERNAL ERROR 错误,是因为jd-gui解析不了该class文件,报错问题如下 解决方式:换个解析器,推荐luyten解析 下载地址:https://g ...

  6. 微信小程序(12)--倒计时

    记录一个常见的效果,倒计时. <text>倒计时:{{content}}</text> Page({ /** * 页面的初始数据 */ data: { endTime: '', ...

  7. 八皇后问题 -- python面向对象解法

    # [8*8棋盘八皇后问题] class Queen: def __init__(self, row, col): self.row = row self.col = col self.pos = ( ...

  8. vmware版本选择

    vmware哪个版本好用 2014-03-10 22:59一枚小白3 | 分类:常见软件 | 浏览6743次 准备装ghost xp,想问下哪个版本更适合?或者现在哪个版本更稳定,求不要复制,求大神解 ...

  9. Python基础教程(014)--缩进错误

    前言 学会编写格式 内容 print(“HelloWorld”) print(“HelloWorld”) ----缩进错误 print(“HelloWorld”) 错误信息: IndentationE ...

  10. el-tree或者el-table里边的slot-scope传递变量但是没有元素对象解决方法

    传统的是点击一个元素可以通过e.target进行获取,但是对于这种的回调函数里边加个e再进行e.target就获取不到元素了,更获取不到点击的位置那么可以在触发的地方写成箭头函数并且传递一个变量.如下 ...