您的位置:首页 > 运维架构 > Apache

一. WAMP——Apache初识

2018-03-26 16:27 393 查看

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>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: