大家好,这里是「 从零开始学 Web 系列教程 」,并在下列地址同步更新......

在这里我会从 Web 前端零基础开始,一步步学习 Web 相关的知识点,期间也会分享一些好玩的项目。现在就让我们一起进入 Web 前端学习的冒险之旅吧!

一、服务器和客户端

服务器和客户端都是电脑,在硬件层面上没有明显的划分,配置很差的个人电脑任然可以作为服务器。

服务器如果想对外提供服务,必须安装相应的软件,所以不是服务器这台电脑可以提供服务,而是其安装的软件提供的服务。比如:

HTTP网页服务:Apache,Tomcat,IIS等

文件上传下载服务:VsFtp等

邮箱服务:SendMail 等

数据存储服务:MySql,Oracle 等

1、网路相关概念

IP 地址:

地址是为了标注某个地点,方便查找。

互联网上又很多公司,每家公司都有自己的服务器。通过 IP 地址就可以找到特定的服务器,使用这台服务器提供的服务。比如百度服务器的地址为:123.125.114.144。

可以通过:ipconfig 查看本机 IP 地址。

域名:

由于 IP 地址是一串数字,很难记忆,为了便于人们记忆,就把域名代替 IP 地址。

比如:www.baidu.com 就是百度的域名。

通过 ping www.baidu.com 可以查看域名对应的 IP 地址。

DNS 域名解析器

DNS 又叫做域名解析服务器,提供域名和 ip 地址的映射关系。

一台电脑访问服务器的过程如下:

比如访问百度服务器:当在地址栏输入 www.baidu.com 点击回车的时候,浏览器会将域名发送到 DNS 域名解析器,解析出 www.baidu.com 对应的 ip 为:123.125.114.144,然后再将这个域名返回给浏览器,浏览器再从这个 ip 访问百度服务器。

然而,一般我们电脑上有一个 hosts 文件,里面保存的是域名和 ip 地址的映射关系。其实在地址栏输入 www.baidu.com 点击回车的时候,会先从 hosts 文件中读取是否有对应域名的 ip 地址,如果有直接返回浏览器访问 ip 地址,如果找不到再从 DNS 域名解析器解析出 ip 地址访问。

本机 hosts 文件的路径:C:\Windows\System32\drivers\etc\hosts

端口

当我们电脑找到一台服务器时,这台服务器可能会提供很多服务,如何区分客户端需要哪种服务就需要端口来区分。

比如:我们在访问百度提供的网页服务时,完整的写法为:www.baidu.com:80,80 这个端口就是百度提供网页服务的,但是80这个端口比较特殊,可以省略不写。

再比如我们在设置邮箱客户端的时候,也需要指定端口号。

2、通信协议

通信协议就是事先商量好的规则。而计算机之间的通信也需要规则。

常见的协议有:

HTTP、HTTPS:超文本传输协议

FTP:文件传输协议

SMTP:简单邮件传输协议

二、WAMP 的安装配置

什么是Wamp?

Wamp指的是:Windows、Apache、MySQL、PHP 几个服务器软件的缩写,类似的还有 LAMP,只不过把 Windows 换成了 Linux。

为什么要安装 Wamp?

以前我们写的 html 文件都是在本地执行的,现在我们想把我们的电脑变成一台服务器,然后将我们的 html 界面以服务的方式提供给别的客户机访问。

Wamp的安装配置

安装很简单,略。

Wamp 的简单配置:

配置访问权限

默认情况下,apache 提供的网页服务只允许 localhost 和 127.0.0.1 (其实这两个是一个映射关系,在 hosts 里面有写)访问,如果我们想让别的客户机访问,就需要对配置文件进行修改。配置文件位于:C:\wamp\bin\apache\Apache2.4.4\conf\httpd.conf 将 268 行的 Deny from all 改成 Allow from all。

注意:在修改所有配置文件之前,都应该先做备份。

网站根路径的配置

默认情况下,网站的根路径为 c:\wamp\www ,在此目录下的文件才可以以服务的方式提供给别人访问,如果想更改这个路径,也需要修改 C:\wamp\bin\apache\Apache2.4.4\conf\httpd.conf 文件,将 DocumentRoot 修改为自己想要的目录。

DocumentRoot "I:/Web/Demo/php"
<Directory "I:/Web/Demo/php">

注意:修改之后,原路径 c:\wamp\www 将不可访问。

三、静态网站和动态网站

静态网站

所有的 HTML 代码全部都已经写好,任何人访问都是相同的。每次网页的改变,都需要修改 HTML 源码,而且如果有1000个 HTML 文件,就需要修改 1000 个 HTML代码,工作量巨大。

动态网站

一般动态网站通过数据库进行架构,动态网站的内容可以根据不同用户的不同需求展示不同的页面。一般是以 asp、jsp、php、aspx 等结尾。

从零开始学 Web 之 Ajax(一)服务器相关概念的更多相关文章

  1. 从零开始学 Web 之 Ajax(二)PHP基础语法

    大家好,这里是「 从零开始学 Web 系列教程 」,并在下列地址同步更新...... github:https://github.com/Daotin/Web 微信公众号:Web前端之巅 博客园:ht ...

  2. 从零开始学 Web 之 Ajax(三)Ajax 概述,快速上手

    大家好,这里是「 从零开始学 Web 系列教程 」,并在下列地址同步更新...... github:https://github.com/Daotin/Web 微信公众号:Web前端之巅 博客园:ht ...

  3. 从零开始学 Web 之 Ajax(四)接口文档,验证用户名唯一性案例

    大家好,这里是「 从零开始学 Web 系列教程 」,并在下列地址同步更新...... github:https://github.com/Daotin/Web 微信公众号:Web前端之巅 博客园:ht ...

  4. 从零开始学 Web 之 Ajax(五)同步异步请求,数据格式

    大家好,这里是「 从零开始学 Web 系列教程 」,并在下列地址同步更新...... github:https://github.com/Daotin/Web 微信公众号:Web前端之巅 博客园:ht ...

  5. 从零开始学 Web 之 Ajax(七)跨域

    大家好,这里是「 从零开始学 Web 系列教程 」,并在下列地址同步更新...... github:https://github.com/Daotin/Web 微信公众号:Web前端之巅 博客园:ht ...

  6. 从零开始学 Web 之 Ajax(六)jQuery中的Ajax

    大家好,这里是「 从零开始学 Web 系列教程 」,并在下列地址同步更新...... github:https://github.com/Daotin/Web 微信公众号:Web前端之巅 博客园:ht ...

  7. 从零开始学 Web 系列教程

    大家好,这里是「 从零开始学 Web 系列教程 」,并在下列地址同步更新…… github:https://github.com/Daotin/Web 微信公众号:Web前端之巅 博客园:http:/ ...

  8. 从零开始学 Web 之 Vue.js(四)Vue的Ajax请求和跨域

    大家好,这里是「 从零开始学 Web 系列教程 」,并在下列地址同步更新...... github:https://github.com/Daotin/Web 微信公众号:Web前端之巅 博客园:ht ...

  9. 从零开始学 Web 之 JavaScript(一)JavaScript概述

    大家好,这里是「 Daotin的梦呓 」从零开始学 Web 系列教程.此文首发于「 Daotin的梦呓 」公众号,欢迎大家订阅关注.在这里我会从 Web 前端零基础开始,一步步学习 Web 相关的知识 ...

随机推荐

  1. java 线程Thread 技术--volatile关键字

    java 语言中允许线程访问共享变量,为了保证共享变量能被准确和一致的更新,Java 语言提供了volatile 关键字,也就是我们所说的内存一致性: 问题抛出:(尝试去运行下面代码,以及将volat ...

  2. CentOS7 使用ifconfig命令 ENS33没有IP地址的解决办法

    最近在研究和学习Linux操作系统,我并没有安装独立的Linux操作系统,我选择在虚拟机上安装Linux操作系统.我选择的虚拟机的版本是VMware Workstation Pro14,然后在虚拟机上 ...

  3. python加密解密算法

    https://www.cnblogs.com/xiao-apple36/p/8744408.html

  4. Spring源码-循环依赖源码解读

    Spring源码-循环依赖源码解读 笔者最近无论是看书还是从网上找资料,都没发现对Spring源码是怎么解决循环依赖这一问题的详解,大家都是解释了Spring解决循环依赖的想法(有的解释也不准确,在& ...

  5. innodb_flush_method理解

    http://blog.csdn.net/gua___gua/article/details/44916207 innodb_flush_method这个参数控制着innodb数据文件及redo lo ...

  6. 获取IP地址方法

    function getip() {     static $ip = '';     $ip = $_SERVER['REMOTE_ADDR'];     if(isset($_SERVER['HT ...

  7. c语言模拟c++的继承和多态

    //C++中的继承与多态 struct A { virtual void fun() //C++中的多态:通过虚函数实现 { cout << "A:fun()" < ...

  8. 桌面应用开发之WPF动态背景

      因为项目需要,在WPF开发的桌面应用中,登陆页面需使用动态背景.由于没有前端开发人员,所以由半吊子的后端开发人员根据效果图写前端xaml.去掉页面上边框,抽离动态背景设置代码: <Windo ...

  9. 仿boost::any的泛型指针类any的实现

    在boost库中,any是一种特殊容器,只能容纳一个元素,但这个元素可以是任意的类型----int.double.string.标准容器或者任何自定义类型.程序可以用any保存任意的数据,也可以在任何 ...

  10. git 命令(提高篇)的本质理解

    上一篇博客:[[git 命令(提高篇)的本质理解] (http://www.cnblogs.com/juking/p/7105744.html)]介绍了Git 的基础知识 -- 提交.分支以及在提交树 ...