下载Apache:http://httpd.apache.org/download.cgi
安装步骤略过。。。。
安装完 Apache 程序后,Monitor apache servers 无法启动,图标显示为红色停止标志。鼠标移至任务栏 Apache 服务图标显示 “No services installed”,原因如下:
Apache 服务没有安装成功
如果 Apache 服务程序成功安装,那么我们可以通过右键“我的电脑” -》“管理” -》“服务和应用程序” -》“服务” 可以看到右侧列表中存在 apache 服务,如不存在,则表示服务器没有被安装成功。具体解决办法如下:
1)运行中键入: cmd 进入 dos 操作界面;
2)进入Apache安装目录:
cd C:/Program Files/Apache Software Foundation/Apache2.2/bin
3)键入命令:
httpd.exe -k install -n apache2
添加apache为服务,在 apache2 中有的版本中是
apache.exe -k install -n apache2。
4)启动服务。键入命令:net start apache2。
如果apache不能启动,将 httpd.conf 文件中 ServerName 去掉#注释,修改原来的主机名为 localhost ,80端口如被占用,用 netstat -anb 查出占用的进程,终止相关进程的程序,或者换一个端口号。
将php以module方式与Apache相结合,使php融入Apache
打开httpd.conf,添加以下五行:
LoadModule php5_module C:/PHP/php5apache2_2.dll
LoadFile C:/PHP/libeay32.dll
LoadFile C:/PHP/ssleay32.dll
PHPIniDir "C:/PHP" #php.ini 文件的所在目录
AddType application/x-httpd-php .php
找到
DirectoryIndex index.html
改为:
DirectoryIndex index.php index.html
———————————————————
以下方式更工整,效果同上
找到:
#LoadModule vhost_alias_module modules/mod_vhost_alias.so
在后面添加一行
LoadModule php5_module C:/PHP/php5apache2_2.dll
LoadFile C:/PHP/libeay32.dll
LoadFile C:/PHP/ssleay32.dll
PHPIniDir "C:/PHP"
找到:
AddType application/x-gzip .gz .tgz
在后面添加一行
AddType application/x-httpd-php .php
AddType application/x-httpd-php .html #加入此行则.html文件也可以执行php程序
libeay32.dll 和 ssleay32.dll 这两个文件是 php.ini 文件中启用了 extension=php_curl.dll 扩展的情况下才需要调用,如果没有开启此扩展,可以删除调用两个文件的两行代码。
========================================================================
添加虚拟主机的步骤:
找到
ServerAdmin
前面打上”#”(不含双引号),也就是把这段注释掉.
找到
DocumentRoot "DocumentRoot "C:/Program Files/Apache Software Foundation/Apache2.2/htdocs"
这个是你安装apache的位置,自己应该晓得把这段也打上”#”,注释掉.
假如,虚拟空间的各个站点都在D盘的wwwroot目录下,那么请添加这段
<Directory "D:/wwwroot">
Options Indexes FollowSymLinks
AllowOverride All
Order allow,deny
Allow from all
</Directory>
这个很重要,接下来,就把各个站点都放在wwwroot目录下,才能正常访问.
找到
#Include conf/extra/httpd-vhosts.conf
取消前面的#注释,使之生效
接着就可以到extra目录中,对httpd-vhosts.conf进行设置,添加站点
例子如下:
<VirtualHost *:80>
ServerAdmin webmaster@域名.com
DocumentRoot "D:/wwwroot/域名.com/www"
ServerName 域名.com
ServerAlias www.域名.com
ErrorLog "D:/wwwroot/域名.com/logs/域名.com-error.log"
CustomLog "D:/wwwroot/域名.com/logs/域名.com-access.log" common
</VirtualHost>
</Directory>
如果要为该站点建立虚拟目录(文件映射),请在<VirtualHost *:80></VirtualHost>标签内添加以下内容:
Alias /uploads "D:/wwwroot/域名.com/www/wp-content/uploads"
<Directory "D:/wwwroot/域名.com/www/wp-content/uploads">
Order allow,deny
Allow from all
</Directory>
通过虚拟目录(文件映射),正则表达式:
http://www.域名.com/wp-content/uploads/
将可通过以下别名的方式进行访问:
http://www.域名.com/uploads/
如果,需要用到rewrite的html静态功能,
请在httpd.conf文件中,找到
#LoadModule rewrite_module modules/mod_rewrite.so
取消掉前面的#注释,使mod_rewrite.so模块生效
并且把所有的
AllowOverride None
更改为
AllowOverride All
好了,一切都ok了,别忘记restat Apache