学习要点

  • 什么是web?
  • 开发动态网站所需的web构件?
  • 几种主流web应用程序平台?
  • HTTP协议与web的关系?
  • Web的工作原理?
  • LAMP网站开发组合概述?
  • 如何学习PHP?

什么是Web?

1      网页构成网站,网站即Web软件,属于B/S架构软件。

  • Web架构系统特点

图形化:文本、图片、多媒体

与平台无关

分布式:信息存储分布式

动态的:信息提供者确保信息动态即使更新

交互的:通过超链接和表单与用户进行交互

  • Web应用系统优势

基于浏览器,具有统一平台和UI体验

无需安装,只要有浏览器,随时随地可以使用

总是保持最新版本,无需升级

数据存储在云端,基本无需担心丢失

新一代web技术提供了更好的用户体验

2      web进化简史

  • web 1.0  信息广播。
  • web 2.0  信息交互。典型产品:博客,QQ空间等。
  • web 5.0  移动互联网,手机和pad移动设备访问互联网成为主流。

3       web开发标准

web1.0和web2.0时代,ie+adobe flash player,html,xhtml1.0,xhtml2.0

移动互联网时代(Apple、Mozila,Opera),HTML5标准

动态网站开发所需的Web构件

  • 动态网站开发是多种技术综合应用,每种技术功能各自独立又相互配合,所以我们需要掌握以下web构件技术:

客户端浏览器:IE,FireFox,Safari

超文本标记语言:HTML

层叠样式表:CSS

客户端脚本编程语言:JavaScript

Web服务器:Apache,Nginx,TomCat,IIS

服务器端编程语言:PHP,JSP,ASP

数据库管理系统:MySQL,Oracle,SQL Server

几种主流的web应用程序平台

性能比较

LAMP

JavaEE

ASP.NET

运行速度

较快

一般

开发速度

非常快

一般

运行损耗

一般

较小

较大

难易程度

简单

简单

运行平台

Linux/Unix/Windows

绝大多数平台

仅Windows平台

HTTP协议与web的关系

1  HTTP协议

HTTP规范1.0和1.1定义了HTTP消息格式。HTTP报文由从客户机到服务器的请求和从服务器到客户机的相应构成,所以HTTP消息分为请求消息和响应消息两类。

2      浏览器查看HTTP请求消息和响应消息

3      URL概述

Uniform  resource Locator,统一资源定位符

格式:

http://<IP地址>/[端口号]/路径/[?<查询信息>]

例如:

http://www.etcxm.com/book/index.html

http:超文本传输协议。FTP,telnet

www:代表一台web服务器

etcxm.com:服务器域名

book:站点上的目录

index.html:book文件夹中的一个HTML文件,即网页。

Web的工作原理

1   服务器不带应用程序服务器和数据库

2  带应用程序服务器的web服务器

3  带应用程序服务器以及数据库的web服务器

LAMP网站开发组合概述

1      Linux操作系统

Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的操作系统。它能运行主要的UNIX工具软件、应用程序和网络协议。它支持32位和64位硬件。Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。

Linux操作系统诞生于1991 年10 月5 日(这是第一次正式向外公布时间)。Linux存在着许多不同的Linux版本,但它们都使用了Linux内核。Linux可安装在各种计算机硬件设备中,比如手机、平板电脑、路由器、视频游戏控制台、台式计算机、大型机和超级计算机。

严格来讲,Linux这个词本身只表示Linux内核,但实际上人们已经习惯了用Linux来形容整个基于Linux内核,并且使用GNU 工程各种工具和数据库的操作系统。

2      Apache服务器和Nginx服务器

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

Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,并在一个BSD-like 协议下发行。由俄罗斯的程序设计师Igor Sysoev所开发,供俄国大型的入口网站及搜索引擎Rambler(俄文:Рамблер)使用。其特点是占有内存少,并发能力强,事实上nginx的并发能力确实在同类型的网页服务器中表现较好,中国大陆使用nginx网站用户有:京东、新浪、网易、腾讯、淘宝等。

3      MySQL数据库管理系统

关系型数据库管理系统。

https://www.mysql.com/downloads/

企业版:MySQL Enterprise Edition (commercial)

集群版:MySQL Cluster CGE (commercial)

社区版(免费开源):MySQL Community Edition (GPL)

4      PHP服务器脚本编程语言

PHP(外文名:PHP: Hypertext Preprocessor,中文名:“超文本预处理器”)是一种通用开源脚本语言。语法吸收了C语言、Java和Perl的特点,利于学习,使用广泛,主要适用于Web开发领域。PHP 独特的语法混合了C、Java、Perl以及PHP自创的语法。它可以比CGI或者Perl更快速地执行动态网页。用PHP做出的动态页面与其他的编程语言相比,PHP是将程序嵌入到HTML(标准通用标记语言下的一个应用)文档中去执行,执行效率比完全生成HTML标记的CGI要高许多;PHP还可以执行编译后代码,编译可以达到加密和优化代码运行,使代码运行更快。

如何学习PHP

  • 学习线路
  • 坚持动手
  • 解决问题为先原则,避免钻牛角尖
  • Bug。Bug有助于提升个人经验值,不要担心,不要烦躁。学会考虑问题出在哪个环节,学会定位问题。
  • 如何成为优秀的Web程序员:克服惯性,扎实的技术功底(计算机科学基础知识不要抛弃:数据结构、离散数学、编译原理、计算机网络等等),编码规范,不要逃避问题,扩展自己的想象力,对新技术的渴求,注重设计模式,多与高手交流,韧性和毅力,写博客,考虑接单。

PHP01 LAMP网站构建的更多相关文章

  1. LAMP网站架构分析

    转自:http://www.williamlong.info/archives/1908.html LAMP(Linux-Apache-MySQL-PHP)网站架构是目前国际流行的Web框架,该框架包 ...

  2. LAMP网站架构方案分析

    本文引自:http://www.williamlong.info/archives/1908.html LAMP(Linux-Apache-MySQL-PHP)网站架构是目前国际流行的Web框架,该框 ...

  3. 腾讯云服务器安装宝塔面板快速配置LNMP/LAMP网站系统

    我们在选择购买腾讯云服务器之后,有部分用户肯定是用来建站用途的.毕竟云服务器的性能和功能比虚拟主机优秀很多.腾讯云服务器拥有香港.北京.广州.上海.美国等多个机房,可以安装Linux和Windows系 ...

  4. 【转】LAMP网站架构方案分析【精辟】

    [转]LAMP网站架构方案分析[精辟] http://www.cnblogs.com/mo-beifeng/archive/2011/09/13/2175197.html Xubuntu下LAMP环境 ...

  5. LAMP网站架构方案解剖

    LAMP网站架构方案解剖 2011-03-18 10:46 月光 网络转载 字号:T | T 网站架构是比较考研技术的一件事,所以要对一种好用的工具,那么网站架构就会事半功倍,LAMP具有通用.跨平台 ...

  6. 建站手册-网站构建:万维网联盟(World Wide Web Consortium)

    ylbtech-建站手册-网站构建:万维网联盟(World Wide Web Consortium) 1.返回顶部 1. http://www.w3school.com.cn/site/site_w3 ...

  7. lamp平台构建

    目录 lamp平台构建 安装httpd 安装mysql 安装php 配置apache 启用代理模块 配置虚拟主机 启用代理模块 验证 lamp平台构建 环境说明: 系统平台 IP 需要安装的服务 ce ...

  8. 开源解决方案一:快速搭建单机版 LAMP 网站

    LAMP 通常表示 Linux + Apache + MySQL/MariaDB + Perl/PHP/Python,LAMP 的各个组件不是一成不变的,并不局限于它最初的选择.作为一个解决方案套件, ...

  9. 架构篇 | 带你轻松玩转 LAMP 网站架构平台(一)

    作者 | JackTian 微信公众号 | 杰哥的IT之旅(ID:Jake_Internet) 转载请联系授权(微信ID:Hc220066)备注:来自博客园 1.什么是 LAMP 架构? LAMP 架 ...

随机推荐

  1. hdoj1007【几何】【未完待续】

    题意: 在一个平面上有n(1e5)个点,然后求一个圆来包住这些点,求这个圆的最小半径. 思考: 要使一个圆直接包了这些点,没有任何思路..

  2. pip查看安装包的可安装版本

    不需要下载或者安装任何其他软件包,你可以指定一个高得离谱的版本号( 不可能有实际安装候选),并且可用的版本将被打印: pip install scrapy==122222 得到信息后指定版本就好了 p ...

  3. hdu1233 还是畅通工程 基础最小生成树

    //克鲁斯卡尔 #include<iostream> #include<algorithm> using namespace std; ; struct node { int ...

  4. icomoon字体使用

    如何灵活利用免费开源图标字体-IcoMoon篇 by zhangxinxu from http://www.zhangxinxu.com本文地址:http://www.zhangxinxu.com/w ...

  5. Educational Codeforces Round 24 D

    Alice and Bob got very bored during a long car trip so they decided to play a game. From the window ...

  6. 模拟+位运算 HDOJ 5491 The Next

    题目传送门 题意:意思很简单,找一个最接近D且比D大的数,满足它的二进制表示下的1的个数在[S1, S2]之间 分析:从D + 1开始,若个数小于S1,那么从低位向高位把0替换成1直到S1就是最小值, ...

  7. 模拟+贪心 URAL 1804 The Machinegunners in a Playoff

    题目传送门 题意:A队和B队踢球,已知一场比赛A和B的得分情况,问A最小再得几分就能胜利还有最多能的几分还能给B队一丝翻盘的希望.规则如下: 1. 总分数相等的情况下,在客场得分高的获胜,如果还相等, ...

  8. SPRING-BOOT系列之SpringBoot快速入门

    今天 , 正式来介绍SpringBoot快速入门 : 可以去如类似 https://docs.spring.io/spring-boot/docs/2.1.0.BUILD-SNAPSHOT/refer ...

  9. shell getopts

    1, 分类: LINUX getopts命令内置于shell中,可以获取由单个字符所指定的有效命令行参数,单个字符有一个‘ - ’号或‘ + ’号. 简单的说,比如运行命令: iptables -t ...

  10. (023) 关于51单片机的A5指令

    可看见一篇讲51单片机加密的文章这么讲: [加密方法:在A5后加一个二字节或三字节操作码,因为所有反汇编软件都不会反汇编A5指令,造成正常程序反汇编乱套,执行程序无问题仿制者就不能改变你的源程序.] ...