一. WAMP——Apache初识

web开发

  • 静态web开发(HTML页面)
    静态web资源:指web页面中供人们浏览的数据,始终是一成不变的,一般来讲,用HTML技术就OK。
  • 动态web开发
    动态web资源:指web页面中供人们浏览的数据是由程序产生的,不同时间点访问web页面看到的内容各不相同。比如说需要发帖呀,网上支付呀,发电子邮件啊blabla,常用的动态web技术有 PHP,JSP,ASP…->asp net,CGI(通用网关接口)

PHP (目前由zend公司管理维护)

PHP是一种HTML内嵌式的语言,是一种在服务器端执行嵌入HTML文档的脚本语言,语言风格类似于C语言,使用广泛。

<?php 
//php代码

?>
  • 优势:
    跨平台性良好,支持多种数据库(MySQL)
    效率比较高,具有良好的安全性
    免费使用(成本低)lamp(Linux Apache MySQL PHP内核)
    相对于ASP,JSP较简单
    源码开放(可做二次开发)
    面向对象(可开发大型商业程序)
  • 缺点
    安装复杂,配置较多
    太灵活,解释执行(相对于编译执行而言的),因此有些错误到真正运行的时候才会暴露

b/s和c/s的比较

项目架构的确定

b(browser浏览器)/s(server服务器) 和 c(client客户端)/s(server服务器)

  • b/s优势
    1.开发成本低(只需要开发服务端)
    2.管理维护简单(只需要维护一端)
    3.产品升级便利
    4.对用户的培训费用低
    5.用户使用方便,出现故障的概率小

  • b/s不足
    1.安全性不足
    2.客户端不能随心变化,受浏览器限制

  • c/s架构–既要开发服务端,又要开发客户端,安全性更高

web服务器

为什么要安装web服务器,如何了解发送和接收到什么?
因为我们的浏览器要从web服务器中取数据。通过HTTPwatch工具来获取发送和接收到的数据,有助于我们了解的更加透彻。

Apache服务器

发现问题(1)

windows下安装Apache,出现“(OS 5)拒绝访问。 : AH00369: Failed to open the Windows service manager ,perhaps…”的错误

安装Apache的时候,由于在官网下载的是zip格式,不是msi安装版,因此需要自己注册服务,才能在桌面任务栏里有httpd的图标。在cmd输入“httpd -k install”命令行安装Apache服务器软件时,报错如下:
这里写图片描述
这里提示没有用管理员身份登录

解决办法:

打开cmd的时候右键以管理员身份运行就OK

这里写图片描述

发现问题(2)

Apache提示 the requested operation has failed无法启动问题

解决办法:

详情参考博客 https://blog.csdn.net/qq_36686681/article/details/53175504

发现问题(3)

AppServ(WAMP环境)在Windows 10中安装后localhost页面打开后为空白

解决办法:

详情参考博客 https://blog.csdn.net/lzuacm/article/details/53115376

Apache安装成功后,操作系统是以服务的方式管理的;
我们可以通过“服务”来启动和停止Apache,也可以通过Apache monitor来进行管理;
或者!也可以通过命令行来管理。

配置Windows+Apache+MySQL+PHP

这里强烈推荐这条百度经验!!
https://jingyan.baidu.com/album/f54ae2fc0a2bca1e92b849cd.html?picindex=6
治好了我多年来安装软件配置环境总遇到坑的恶病。

一些基本知识

端口

Apache默认在80端口监听,当你访问www.baidu.com时,其默认端口为80
一台机器可以有1-65535号端口
在实际开发中,我们经常使用 netstat -an 来查看当前机器有哪些端口在监听,如果发现有异常端口监听,则可以关闭该端口
这里写图片描述
通过netstat -anb命令可以查看具体是哪个程序在监听该端口,从而方便关闭。
若一台机器的80端口已经被Apache监听,则该端口不能再被其他的应用程序监听。
有名端口(1-1024号端口一般被占用),其他端口可自己分配
Apache可以同时监听多个端口(在Apache的conf文件夹中找到httpd-conf配置文件可对端口进行更改)

listen 80
listen 81
listen 82
...

Apache目录文件的用途(了解)

  • bin:该目录用于存放Apache常用命令,比如httpd
  • cgi-bin:该目录存放Linux下的常用命令
  • conf:存放配置文件
  • error:错误记录
  • htdocs:默认根目录,存放我们的站点文件(可进行更改),如果有多个站点,我们可以在该目录下通过文件夹来管理分类
  • icons:存放图标
  • logs:记录Apache的相关日志
  • manual:手册
  • modules:Apache模块(Apache是以模块的形式对功能进行管理的),可以在手册上查询模块功能

虚拟目录
提一个需求:假设我的Apache是安装在C盘的,但是C盘没有足够空间而D盘有更很多空间,能不能把D盘文件夹下的网页(HTML,PHP),当做网站管理。
配置虚拟目录:

1.增加虚拟目录节点,找到<IfModule>这块,加入下面的代码;
[plain] view plaincopy
# 虚拟目录,访问D盘下面的web目录 
<IfModule dir_module>  
    # 设置缺省载入页面  
    DirectoryIndex index.html index.htm index.php  
    # 设置站点别名,别名与访问路径是相关的,取任何名称都可以(除特殊)  
    Alias /myweb "D:/web"  
    <Directory D:/web>  
    # 设置访问权限(表示对D盘下面的web文件进行权限设置)
    Order allow,deny  
    Allow from all  
    </Directory>  
</IfModule>  
2.注释DocumentRoot路径
#DocumentRoot "E:/php/web"  
3.在浏览器中输入:http://localhost/myweb/xx.php 来访问 D:/web 下的文件

虚拟主机
提一个需求:一般我们访问网站的时候都不会用http://localhost/news.html这样的方式,而我需要用http://www.zhukeyan.com这样的方式进行访问。

#配置虚拟主机的步骤如下:
首先要找到hosts(c:\windows\system32\drivers\etc\hosts)文件,在127.0.0.1  localhost 下面添加一行代码:
127.0.0.1     zhukeyan.com
1.启用 httpd-vhosts.conf
# Virtual hosts
#Include conf/extra/httpd-vhosts.conf
#LoadModule vhost_alias_module modules/mod_vhost_alias.so
取消#注释。
这样在重启Apache以后,就可以加载虚拟主机
2.在apache的安装目录下找到conf目录下的extra,在httpd-vhosts.conf文件末尾做配置
<VirtualHost *:80>  
    #修改文档根路径  
    DocumentRoot "d:/www"  #虚拟主机存放文件的位置   
    #主机名称  
    ServerName zhukeyan.com  #虚拟主机的名称,和hosts这个文件下添加的虚拟主机名一致
    ServerAlias www.zhukeyan.com
    ServerAdmin webmaster@dummy-host2.example.com    #管理服务器的邮箱 一般不需要填写
    #欢迎页面  
    DirectoryIndex index.html  index.htm index.php
    <Directory "d:/www">  
    Options -Indexes FollowSymLinks  
    AllowOverride None  #不允许别人修改我们的页面
    #设置访问权限
    Order allow,deny  
    Allow from all  
    </Directory>  
    #错误日志存放位置  
    ErrorLog "logs/myvirtualhost.com-error.log"  
    CustomLog "logs/myvirtualhost.com-access.log" common  
</VirtualHost>  

猜你喜欢

转载自blog.csdn.net/in_nocence/article/details/79680280