一、软件准备:以下均为截止2006-7-27最新正式版本
PHP(5.1.4):http://www.php.net
Apache(2.2.2):http://www.Apache.org/
二、安装 Apache :
Apache的安装非常简单,选择接受许可协议后进入服务器信息配置界面。
第一栏"Network Domain"域名信息,在这里填入你的服务器的域名,如果你已经申请到域名的话填入你申请的域名,(注意这里要填的是域名,只是你申请到的完整域名的后半部分,不包括"www"。如果你申请的是二级域名的话,就是第一个"."之后的部分)如果还没有的话,把本机的IP填上去就行了。
下一行是服务器名,填入完整的域名或IP地址。
再下一栏是管理员Email地址。这三项在安装是就必须填写,但是在安装完成后你还可以随时进行修改,所以你不必担心填错了会出问题。最后的选项不用改就可以了。
点击"Next"进入下一步。选择"Typical"典型安装,下一步选择安装目录,默认安装目录是系统盘的Program Files/Apache Group目录。点击"Next"再单击"Install"进行安装。
安装完成后,可以看到系统状态栏里出现Apache的羽毛状图标并带有绿色箭头,说明服务器已经偷偷摸摸 的启动啦。
现在看看我们的成绩吧。打开浏览器,输入localhost或者127.0.0.1(这两个都指向本机地址),回车,如果安装正确的话你就能看到Apache的测试页面了(我的是If wrok,几个大字),这不是我们要的站呢,我的网站在哪里呢?别着急,现在不管子它啦。我们等和PHP一起设置。。算完成一外简单的步骤!
三、安装 PHP :
我们在这里要注意的就是在下载PHP时一定要下载那个zip包的,而不要下载Installer的.将我们下载下来的PHP包解压到C盘下的根目录下,并将解压出来的文件夹改名为php.
(1) 下载后得到 php-5.1.2-Win32.zip ,解压至C:php(这个路径可以随意,不过下面要是用到这个路径,请相应修改);
(2)再将 C:phplibmysql.dll 和 C:Inetpubphpextphp_mysql.dll 复制到 C:Windowssystem32 下;
(3)将C:PHPphp.ini-dist 复制到C:Windows ( Windows 2000 下为 C:WINNT)并将改名为php.ini,然后用记事本打开,利用记事本的查找功能搜索:
extension_dir = "C:PHPext"
将其路径指到你的 PHP 目录下的 extensions 目录,比如:extension_dir = "C:Inetpubphpext" ;
搜索;Windows Extensions并仅打开需要的模块以节省内存(去掉每个模块前的;号即可):
extension=php_gd2.dll
GD库支持,如果不打开该模块则Discuz!论坛图片水印不能使用。
extension=php_mbstring.dll
为了支持phpMyAdmin,打开mbstring。
extension=php_mysql.dll
不用说了吧,支持MySQL。
(4)配置 AND Apache 使其支持 PHP
有两种方法使得 PHP 工作在 Windows 下的 Apache。一是使用 CGI 二进制文件,另一是使用 Apache 模块 DLL。无论那种方法,您首先编辑 httpd.conf,然后重新启 Apache 服务器,以配置 Apache 和 PHP 协同工作。 个人推荐模块方式安装(也只讲这种方法[em23])!
打开Apache Software FoundationApache2.2confhttpd.conf (这是默认,实际以你安装路径为准)
把以下三行加到 httpd.conf 最最最最后(方便)
LoadModule php5_module "c:/php/php5apache2.dll" (这是默认,实际以你php5apache2.dll路径为准)
AddType application/x-httpd-php .php
PHPIniDir "c:/php"
更改主目录路径,搜索DocumentRoot "***/Apache2.2/htdocs"(前面无#的行,注意到文件的大部分都是以#开头的,因为#是注释,程序将略过这些内容),后面的一部分就是你服务器的根目录了,把它改成你想要的目录就行了,这里建议你使用绝对地址,这样避免一些不必要的问题。需要说明的一点是这里的地址要用斜杠’/’而不是Windows文件系统习惯的反斜杠”,在地址的最后不要加斜杠。
然后重新启 Apache 服务器,PHP就安装好了(如果这步有问题看看本文结尾的解决办法,其他Apache设置网上很多自己找[em16])
四、虚拟主机配置: (需要的才看)
对httpd.conf进行设置:
1.注释以下三行:
#ServerAdmin
#ServerName
#DocumentRoot
2.指定要访问站点的主目录(主目录下面放的是我们建立虚拟站点的子目录,我们的站点目录都放在以下,c:/wwwroot 这一步很重要)
具体设置:
179 <Directory "c:/wwwroot">
180 #
181 # Possible values for the Options directive are "None", "All",
182 # or any combination of:
183 # Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews
184 #
185 # Note that "MultiViews" must be named *explicitly* — "Options All"
186 # doesn’t give it to you.
187 #
188 # The Options directive is both complicated and important. Please see
189 # http://httpd.apache.org/docs/2.2/mod/core.html#options
190 # for more information.
191 #
192 # Options Indexes FollowSymLinks
193
194 #
195 # AllowOverride controls what directives may be placed in .htaccess files.
196 # It can be "All", "None", or any combination of the keywords:
197 # Options FileInfo AuthConfig Limit
198 #
199 AllowOverride None
200
201 #
202 # Controls who can get stuff from this server.
203 #
204 Order allow,deny
205 Allow from all
206
207 </Directory>
208
3.开启虚拟主机配置文件
440 #Virtual hosts
441 #Include conf/extra/httpd-vhosts.conf (查找这行,把前面的#去掉)
4.打开 /conf/extra/httpd-vhosts.conf
参照我的配置 对example修改#
# Use name-based virtual hosting.
#
NameVirtualHost 127.0.0.1:80
#当初这行写成了NameVirtualHost *:80 害我花了几小时肯E文,气死了[em10]
<VirtualHost yourdomain.net:80>
<Directory "E:/sites_php/Discuz!">
DirectoryIndex index.php
</Directory>
ServerAdmin webmaster@yourdomain.net
DocumentRoot E:/sites_php/Discuz!
ServerName yourdomain.net
ServerAlias yourdomain.net
ErrorLog logs/dummy-host.yourdomain.net-error_log
CustomLog logs/dummy-host.yourdomain.net-access_log common
</VirtualHost>
<VirtualHost yourdomain.com:80>
<Directory "E:/sites_php/wwwroot">
DirectoryIndex index.htm index.html index.php
</Directory>
ServerAdmin webmaster@yourdomain.com
DocumentRoot E:/sites_php/wwwroot
ServerName yourdomain.com
ServerAlias gg
ErrorLog logs/dummy-host2.yourdomain.com-error_log
CustomLog logs/dummy-host2.yourdomain.com-access_log common
</VirtualHost>
好了测试一下吧。