【PHP入门教程一】安装 WAMP 环境

本教程主要为php的面试及入门考虑,内容比较简单,高手勿喷。第一篇我们先来学习一下Wamp环境的安装,Wamp 即是windows + apache + mysql + php的缩写,本文介绍最新版本的安装。其实在windows开发环境中有套装的集成环境wamp可以直接使用,但是对于我们学习一门语言,也要学会它的环境,因此配置安装也是很重要的。对于production release,我们最重要的是学会Lamp环境,即是Linux环境下的安装。下一篇教程我们将会介绍。因为这个对于一个phper是必须的。好了,言归正传,让我们开始学习吧~ 

安装 WAMP 环境

1 apache 安装

1.1 目录

我们先从官网上下载http://www.apachehaus.com/cgi-bin/download.plx?dli=hpXRzMVVBFjTEN2aSd0Y0okVOpkVFVVcNdEbuJVQ

apache Haus这个是新的名字,其实就是apache2.4

下载完成后解压到你需要的目录即可。

bin :apache的二进制可执行文件,用来操作apache。其中主要执行文件httpd.exe

conf :配置文件目录,主配置文件httpd.conf,另外extra目录中的httpd-vhosts.conf可以配置虚拟主机

htdocs: apache默认的根目录

include: apache包含的C库

logs:记录apache的日志包括安装日志,访问日志,错误日志等

modules:apache的模块

1.2 注册服务

非安装版的apache我们需要手动来注册httpd服务。

用以下命令安装一个名字为MyServiceName的httpd服务,-n名字,默认服务名称为apache2.4

httpd.exe -k install -n "MyServiceName"

移除httpd服务可以用:

httpd.exe -k uninstall

启动httpd服务

httpd.exe -k start -n "MyServiceName"

停止httpd服务

httpd.exe -k stop -n "MyServiceName"

在windows注册服务成功后,我们可以在服务列表中看到:

同样,我们可以这样启动服务

停止服务

1.3 添加主机域名

由于没有DNS,我们在测试环境需要手动添加需要的主机名,修改文件C:\Windows\System32\drivers\etc\hosts

127.0.0.1       localhost zf2-tutorial.localhost

这样我们就添加了localhost 和 zf2-tutorial.localhost两个域名,同时会映射到我们的本地地址,加空格可以再添加多个。

添加完后我们来测试一下,看到这个页面说明你apache已经安装成功。

1.4 添加虚拟主机

通常来说,在windows的apache环境添加站点,不介意直接修改主配置文件,而且主配置文件修改只能对应一个站点。

所以我们可以通过添加虚拟主机的方法来添加多个站点。修改conf\extra\httpd-vhosts.conf文件

添加如下代码

<VirtualHost *:80>  #设置站点方位端口,默认为80端口
    DocumentRoot "E:\ZendSkeletonApplication-master\ZendSkeletonApplication-master\public"    #网站根目录
    SetEnv APPLICATION_ENV "development" #设置应用环境变量
    ServerName zf2-tutorial.localhost #设置服务器名,需要和hosts文件中对应
    <Directory "E:\ZendSkeletonApplication-master\ZendSkeletonApplication-master\public"> #目录权限设置
    DirectoryIndex index.php #设置默认入口文件
    AllowOverride All
    Require all granted #apche中新的配置限制ip访问目录的方法,这里表示允许任何ip访问这个目录
    </Directory>
</VirtualHost>

AllowOverride 参数说明

通常利用 Apache的rewrite模块对 URL 进行重写的时候, rewrite规则会写在 .htaccess 文件里。但要使 apache 能够正常的读取.htaccess 文件的内容,就必须对.htaccess 所在目录进行配置。从安全性考虑,根目录的AllowOverride属性一般都配置成不允许任何Override,即:

< Directory />
AllowOverride None
< /Directory>

在 AllowOverride 设置为 None 时, .htaccess 文件将被完全忽略。当此指令设置为 All 时,所有具有 “.htaccess” 作用域的指令都允许出现在 .htaccess 文件中。

而对于 URL rewrite 来说,至少需要把目录设置为:

< Directory /myblogroot/>
AllowOverride FileInfo
< /Directory>

而对于 URL rewrite 来说,至少需要把目录设置为:

AuthConfig

允许使用与认证授权相关的指令(AuthDBMGroupFile, AuthDBMUserFile, AuthGroupFile, AuthName, AuthType, AuthUserFile, Require, 等)。

FileInfo

允许使用控制文档类型的指令(DefaultType, ErrorDocument, ForceType,
LanguagePriority, SetHandler, SetInputFilter, SetOutputFilter,
mod_mime中的 Add* 和 Remove* 指令等等)、控制文档元数据的指令(Header, RequestHeader,
SetEnvIf, SetEnvIfNoCase, BrowserMatch, CookieExpires, CookieDomain,
CookieStyle, CookieTracking, CookieName)、mod_rewrite中的指令(RewriteEngine,
RewriteOptions, RewriteBase, RewriteCond,
RewriteRule)和mod_actions中的Action指令。

Indexes

允许使用控制目录索引的指令(AddDescription, AddIcon, AddIconByEncoding,
AddIconByType, DefaultIcon, DirectoryIndex, FancyIndexing, HeaderName,
IndexIgnore, IndexOptions, ReadmeName, 等)。

Limit

允许使用控制主机访问的指令(Allow, Deny, Order)。

Options[=Option,...]

允许使用控制指定目录功能的指令(Options和XBitHack)。可以在等号后面附加一个逗号分隔的(无空格的)Options选项列表,用来控制允许Options指令使用哪些选项。

require 参数说明

  1. ################################################
  2. 2.2上的配置
  3. Order deny,allow
  4. Deny from all
  5. 2.4上的配置
  6. Require all denied
  7. ################################################
  8. 2.2上的配置
  9. Order allow,deny
  10. Allow from all
  11. 2.4上的配置
  12. Require all granted
  13. #################################################

Order allow,deny

可以理解为先允许,后排除,

那么下一句要写deny from ip..来拒绝这些ip访问

Order deny,allow

可以理解为先排除,后允许

那么下一句要写allow from ip..来限定这几个ip访问

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
下面给出了几个例子在2.4版本上的配置
1. 仅允许IP为192.168.1.1的主机访问

  1. <RequireAll>
  2. require all  granted
  3. require ip 192.168.1.1
  4. </RequireAll>

2.仅允许192.168.0.0/24网络的主机访问

  1. <RequireAll>
  2. require all  granted
  3. require ip 192.168.1.0/24
  4. </RequireAll>

3.禁止192.168.1.2的主机访问,其他的都允许访问,

  1. <RequireAll>
  2. require all  granted
  3. require not ip 192.168.1.2
  4. </RequireAll>

4.允许所有访问,

  1. require all  granted
  2. 注,这个可以不用加容器 ...... 
     
  3. 直接,写在  .....里面就可以了

5.拒绝所有访问,

  1. require all  denied

2 php 安装

目前windows最新php版本为PHP 5.6

http://windows.php.net/downloads/releases/php-5.6.5-Win32-VC11-x86.zip

下载完成后解压,主目录下php.ini-development开发用的配置文件重名为php.ini

修改扩展路径

extension_dir = "D:\software\php\ext"

把 extension=php_mysql.dll 前的;去掉

加载相应的模块去掉前面的;即可

修改时区,国内用PRC

date.timezone = UTC

修改apache主配置文件httpd.conf

在loadModule列表后加上

LoadModule php5_module "D:/software/php/php5apache2_4.dll"
PHPIniDir "D:/software/php/php.ini"

在IfModule mime_module标签内加入apache对php文件类型的支持

# Add Type for php
    AddType application/x-httpd-php .php .html .htm

如果需要有rewrite模块的可以打开注释(用于.htacess文件中开启对url重写的功能)

LoadModule rewrite_module modules/mod_rewrite.so

到这里apache和php的集成已经完成了,

下面加入在根目录下添加一个查看配置的测试文件

<?php
phpinfo();
?>

Success!

3 mysql安装

windows下mySQL安装还是比较简单的,可用“轻松+愉快”来形容。

首先我们去mysql官网下载社区版本http://dev.mysql.com/downloads/file.php?id=455349

-选择install

-确认licence

-选择安装类型 选择自定义,去掉那些庞大无用,比如workbench,建议自己安装轻量级的客户端如sqlyog

-选择相应的开发组件,有odbc,jdbc,c++ connector,.net connector等

-正在安装

-安装完成配置参数 默认端口号3360

-配置root用户和新增用户

-配置服务名称和运行账户

安装完成后我们启动mysql服务/关闭mysql服务 默认安装完已经启动了

启动成功说明安装完成,建议接着安装数据库客户端,比如sqlyog,我一直用这个,很好用。

然后可以用mysql command line client 登录数据库(开始->菜单),也可进入命令行mysql目录下操作

进入命令行,我们先创建一个database

create database test;

使用这个数据库

use test;

创建一张数据表

create table person(

  id int AUTO_INCREMENT,

  name varchar(255) not null,

  primary key(id)

);

插入数据

intert into person values(1, ‘david‘);

最后我们加入测试文件

<?php
    //链接mysql
    $link=mysql_connect("localhost","root","") or die(‘FAILD TO CONNECT!‘);
    //选择数据库库
    mysql_select_db("test");
    //执行sql
    $result = mysql_query("select id,name from person");
    print"<table border=1>";
    print"<tr><th>ID</th><th>Name</th></tr>";
    //取出行数组
    while($t_result = mysql_fetch_array($result)){
      $tr = "<tr><td>".$t_result["id"]."</td><td>".$t_result["name"]."</td></tr>";
      print $tr;
    }
    print"</table>";
?> 

链接成功!数据显示正常!

4 参考资料

http://blog.sina.com.cn/s/blog_9082c1e501018v5x.html

http://www.chinaz.com/server/2010/0129/105397.shtml

http://httpd.apache.org/docs/current/platform/windows.html#down

5 总结

本文件简单介绍了WAMP环境的安装,此环境主要用于开发和测试,生产环境最好在Linux上部署,如果用Server的话也介意使用IIS,不要用Windows上的apache。后面我们将会介绍Linux上的LAMP环境安装,同时我们要深入了解配置文件。关于MySQL的配置也会在后续的文章中详述!

                          

时间: 2024-10-11 13:41:05

【PHP入门教程一】安装 WAMP 环境的相关文章

Android基础入门教程——1.2 开发环境搭建

Android基础入门教程--1.2 开发环境搭建 现在主流的Android开发环境有: ①Eclipse + ADT + SDK ②Android Studio + SDK ③IntelliJ IDEA + SDK 现在国内大部分开发人员还是使用的Eclipse,而谷歌宣布不再更新ADT后,并且官网也去掉了集成Android开发环境的Eclipse下载链接,各种现象都表示开发者最后都终将过渡到Android Studio,当然这段过渡时间会很长,但如果你是刚学Android的话建议直接冲And

ActiveReports 报表控件官方中文入门教程 (1)-安装、激活以及产品资源

原文:ActiveReports 报表控件官方中文入门教程 (1)-安装.激活以及产品资源 本系列文章主要是面向初次接触 ActiveReports 产品的用户,可以帮助您在三天之内轻松的掌握ActiveReports控件的基本使用方法,包括安装.激活.创建报表.绑定数据源以及发布等内容.本篇文章我们就从安装产品开始带您开启轻松的 ActiveReports 体验之旅. 系列文章列表: ActiveReports 报表控件官方中文入门教程 (2)-创建.数据源.浏览以及发布 ActiveRepo

day2_windows下zip安装wamp环境

1.如何选择PHP版本? Which version do I choose? IIS If you are using PHP as FastCGI with IIS you should use the Non-Thread Safe (NTS) versions of PHP. Apache Please use the Apache builds provided by Apache Lounge. They also provide VC11 builds of Apache for

Spring Cloud 入门教程(四): 分布式环境下自动发现配置服务

前一章, 我们的Hello world应用服务,通过配置服务器Config Server获取到了我们配置的hello信息"hello world". 但自己的配置文件中必须配置config server的URL(http://localhost:8888), 如果把config server搬到另外一个独立IP上, 那么作为一个client的hello world应用必须修改自己的bootstrap.yml中的config server的URL地址.这明显是不够方便的. 既然confi

安装wamp环境 最新完整版

Apache 下载地址:https://www.apachehaus.com/cgi-bin/download.plx 下载后 解压目录 放到C:/Program Files下面目录重命名为Apache 进入conf目录编辑httpd.conf 把路径改成Apache目录路径:Define SRVROOT "C:/Program Files/Apache" 控制台cmd切入bin目录 开启Apache服务httpd -k installhttpd -k start (指定名称添加服务

【Java入门】JDK安装和环境变量配置(Win7版)

系统环境:Windows7 x64 安装JDK和JRE版本:1.8.0_191 1.下载JDK安装包 Oracle官网下载网址:https://www.oracle.com/technetwork/java/javase/downloads/index.html 选择需要下载的JDK版本,本人下载的是JDK8u191,等同于JDK1.8版本,接着点击接受许可协议的选项,才能允许下载 2.根据计算机系统来选择下载相应的JDK安装包,根据你电脑的系统可选择(windows/linux/mac)下载,

Node.js入门教程 第一篇 (环境配置及概念原理)

Node.js 概念 Node.js本质上是使用Google的V8引擎制作出来的服务框架.V8本身是Google为了解决Chrome浏览器的性能问题而制作的前端引擎(开源).本身依托于浏览器引擎,这也是为什么Node.js使用的是前端的JavaScript语言编程. V8的诞生是Google为了解决JavaScript的性能问题,用了内联缓存和隐藏类技术实现的前端引擎.V8使用C++编写,也因此V8可以在C++项目中完美兼容使用. V8被Google使用在大多数产品中,如Chrome浏览器,安卓

Ant入门教程之安装配置

一.安装 下载地址:http://ant.apache.org/,本文中下载的是1.9.4版本. 解压到某个目录(例如D:\apache-ant-1.9.4)即可使用. 二.配置 添加系统环境变量:ANT_HOME 该变量指向Ant解压后的根目录,本文为:D:\apache-ant-1.9.4 添加Path变量 : 在path最后面追加 %ANT_HOME%\bin; (注意分号) 三.测试是否成功 打开cmd,运行命令ant -version,若安装和配置成功,则会显示Ant版本信息,如下:

wamp环境下如何安装redis扩展

Redis安装 wamp环境安装redis扩展 首先在自己本地项目中phpinfo(); 查看php版本; (php版本是5.5, ts-vcll表示MSVC11 (Visual C++ 2012), 自己环境是32位的(x86)) (看着三个信息) 官网下载 http://windows.php.net/downloads/pecl/releases/igbinary/1.2.1/ ? 这个下载好后解压 ? ? http://windows.php.net/downloads/pecl/sna