Windows下Apache+PHP+phpmyadmin的配置
一、 Apache的配置
(一) 下载解压
下载地址:https://www.apachelounge.com/download/
解压到D:\amp
(二) 安装
用管理员身份打开CMD,进入D:\amp\Apache24\bin目录,运行httpd -k install进行安装。
出现以下错误先不用管”Errors reported here must be corrected before the service can be started.”。
安装完成后输入httpd启动服务器。根据报错信息查找相应解决方案,我在安装过程中碰到如下问题。
1.httpd: Syntax error on line 72 of D:/amp/Apache24/conf/httpd.conf: Cannot load modules /mod_access_compat.so into server: \xd5 \xd2 \xb2 \xbb \xb5 \xbd \xd6 \xb8 \xb6 \xa8 \xb5 \xc4\xc4\xa3\xbf\xe9\xa1\xa3
从报错来看,是加载不了modules文件夹下mod_access_compat.so文件,解决方法:校对下conf/httpd.conf文件,ServerRoot,DocumentRoot等的值是不是和你放Apache文件的路径一致,修改为正确的路径后重新安装即可。
2.AH00558: httpd: Could not reliably determine the server's fully qualified domain name, using fe80::5409:51da:fc0:9104. Set the 'ServerName' directive globally to suppress this message
用记事本打开 httpd.conf,将里面的 #ServerName localhost:80 注释去掉即可。
(三) 测试
打开浏览器,输入localhost,若出现it works. 则表示配置成功,我配置过程中遇到如下问题:
3.Forbidden You don't have permission to access / on this server.
解决方案:修改httpd.conf,改为
<Directory "D:/xxx/xxx">
Options Indexes FollowSymLinks
AllowOverride all
Require all granted
</Directory>
二、 PHP的配置
(一) 下载解压
地址:http://php.net/downloads.php,并解压到D:\amp\php
(二) 配置
在解压的根目录下找到php.ini-development,是用于开发环境的配置文件;还有一个php.ini-production,这个是用于生产环境的配置文件。使用php.in-development,复制一份,重命名为php.ini。开始编辑。
为了使php能够调用其他模块,可以以extension关键字搜索,定位到如下,去除选项前的分号,则打开此模块的支持。
加载的模块越多,占用的资源要稍微多些,可以忽略。比如要启用mysql的支持,则找到如下
;extension=php_mysql.dll
去除前面的";"注释就可以了。
所有的模块都放在php解压目录下的ext目录中,可以根据需要启用。
加载模块报错:
有时启动Apache的时候会提示“找不到指定模块”的错误,是因为没有指定这些模块文件的位置,定位关键字“extension_dir”,修改Windows下为你的PHP模块的目录。
比如我的PHP目录在 D:\amp\PHP,则配置
extession_dir = "D:\amp\PHP\ext"
这样启动Apache就不会报错了。
这里介绍一种最简单的方法,直接将php安装路径、里面的ext路径指定到windows系统路径中——在“我的电脑”上右键,“属性”,选择“高级”标签,点选“环境变量”,在“系统变量”下找到“Path”变量,选择,双击或点击“编辑”,将“;D:\php;D:\php\ext”加到原有值的后面,当然,其中的“D:\php”是我的安装目录,你要将它改为自己的php安装目录,如下图所示,全部确定。
与Apache协同工作
php以module方式与Apache相结合,打开Apache的配置文件,以关键字“LoadModule”定位,配置要加载的模块,
在最后添加如下两行:
LoadModule php5_module D:/amp/php/php5apache2_2.dll
PHPIniDir "D:/php"
第一行“LoadModule php5_module D:/php/php5apache2_2.dll”是指以module方式加载php,第二行“PHPIniDir "D:/php"”是指明php的配置文件php.ini的位置,是当然,其中的“D:/php”要改成你先前选择的php解压缩的目录。
在php的解压目录下同时有php5apache2.dll和php5apache2_2.dll,因为我们的apache版本是2.2的,所以加载dll
使用php5apache2_2.dll,可以根据自己的情况配置。
以关键字AddType application搜索,可以定义能够执行php文件类型,
原文如下:AddType allows you to add to or override
the MIME configuration
# file specified in TypesConfig for specific file types.
加入
AddType application/x-httpd-php .php
AddTypeapplication/x-httpd-php.html
两行,你也可以加入更多,实质就是添加可以执行php的文件类型,比如你再加上一行“AddTypeapplication/x-httpd-php .htm”,则.htm文件也可以执行php程序了,你甚至还可以添加上一行“AddTypeapplication/x-httpd-php .txt”,让普通的文本txt也能运行php程序。
(三) 测试
新建index.php文件放入服务器htdocs文件夹下,打开浏览器访问localhost/index.php
三、 phpMyAdmin的配置
(一) 下载解压
地址https://www.phpmyadmin.net/downloads/,解压后放入服务器htdocs目录下
(二) 配置
配置config文件
打开libraries下的config.default.php文件,依次找到下面各项,按照说明配置即可:
A. phpmyadmin的访问网址
$cfg['PmaAbsoluteUri'] = '';这里填写phpmyadmin的访问网址:
如改成$cfg['PmaAbsoluteUri'] = 'localhost/phpMyAdmin'
B.修改服务器IP地址
$cfg['Servers'][$i]['host'] = 'localhost';
填写localhost或mysql所在服务器的ip地址,如果mysql和该phpmyadmin在同一服务器,则按默认localhost
cfg['Servers'][$i]['port'] = ''; (mysql端口,如果是默认3306,保留为空即可 )
mysql用户名和密码
$cfg['Servers'][$i]['user'] = 'root';
// MySQL user 访问phpmyadmin使用的mysql用户名
$cfg['Servers'][$i]['password'] = '';
// MySQL password (only needed对应上述mysql用户名的密码
$cfg['Servers'][$i]['auth_type'] = 'cookie';
在此有四种模式可供选择,cookie,http,HTTP,config
config方式即输入phpmyadmin的访问网址即可直接进入,无需输入用户名和密码,是不安全的,不推荐使用。
当该项设置为cookie,http或HTTP时,登录phpmyadmin需要数据用户名和密码进行验证,,具体如下:
PHP安装模式为Apache,可以使用http和cookie;
PHP安装模式为CGI,可以使用cookie
短语密码(blowfish_secret)的设置
$cfg['blowfish_secret'] = '';
如果认证方法设置为cookie,就需要设置短语密码,置于设置为什么密码,由您自己决定 ,但是不能留空,否则会在登录phpmyadmin时提示错误
(三) 测试
打开浏览器访问localhost/phpMyAdmin/index.php