Mac下配置PHP+Apache+phpMyAdmin+MySql远程链接
2015-12-14 22:02
656 查看
最近的项目是微信公众号平台的开发,微信官方给出的Demo是PHP的,发现大部分的学习资料也是PHP,那好吧,放弃Java,来段儿PHP吧
下面说说Mac下搭建PHP环境数据库:MySQL-5.6.26
OS X:10.11.1
Apache:2.4.16
phpMyAdmin:4.5.2
编辑器:Sublime Text3
Apache:
Mac系统下已经自带,打开『终端』输入:sudo apachectl -v 或 httpd -v 和 密码
可看到系统自带的版本信息:
Server version: Apache/2.4.16 (Unix) Server built: Aug 22 2015 16:51:57
下面是基本的命令:
// 启动Apache服务 sudo apachectl start // 重新启动Apache服务 sudo apachectl restart // 关闭Apache服务 sudo apachectl stop
配置Apache增加对PHP的支持
1.编辑http.conf配置文件,终端如下: sudo vim /etc/apache2/http.conf 2.去掉以下部分的注释: LoadModule php5_module libexec/apache2/libphp5.so(即去掉前面的#) 3.重启Apache服务: sudo apachectl restart
接下来,直接用浏览器打开http://localhost出现以下页面,即为配置成功
![](http://images2015.cnblogs.com/blog/731716/201512/731716-20151214190645693-1861668900.png)
现在可以自己写一个PHP文件,test1.php放在,/Library/WebServer/Documents下
![](http://images2015.cnblogs.com/blog/731716/201512/731716-20151214193329474-1988980722.png)
打开浏览器,http://localhost/test1.php
![](http://images2015.cnblogs.com/blog/731716/201512/731716-20151214193430443-629556312.png)
phpMyAdmin:
下面配置phpMyAdmin,我暂时也不知道这东西有什么卵用,习惯了终端,当作MySQL-Front用?在http://www.phpmyadmin.net/home_page/downloads.php上下载最新版本
将解压得到的文件夹,重命名为phpmyadmin,移动到:
![](http://images2015.cnblogs.com/blog/731716/201512/731716-20151214195906787-1990349253.png)
在该文件夹下新建config.inc.php文件:
<?php $i = 0; $i++; //下面不知有什么用。。 $cfg['Servers'][$i]['auth_type'] = 'cookie'; /* Server parameters */ //下面这句,经不完全测试,可有可无 $cfg['Servers'][$i]['host'] = '127.0.0.1'; $cfg['Servers'][$i]['connect_type'] = 'tcp'; $cfg['Servers'][$i]['compress'] = false; //如果想要无密码登陆,则将其中的下面语句中的false改成true $cfg['Servers'][$i]['AllowNoPassword'] = false; //若为FALSE则在index.php页面没有服务器输入框,如果端口号不是默认的3306的话,则会提示无法登录MySQL服务器 $cfg['AllowArbitraryServer'] = true; ?>
现在就可以在浏览器中打开http://localhost/phpmyadmin/index.php
MySQL的帐号密码,服务器为127.0.0.1:端口号 直接登录
![](http://images2015.cnblogs.com/blog/731716/201512/731716-20151214212303521-290154595.png)
下面再来一个PHP访问MySQL的小例子:
<?php echo "PHP连接MySQL测试</br>"; $mysql_server_name="127.0.0.1:3307"; //数据库服务器名称 $mysql_username="root"; // 连接数据库用户名 $mysql_password="950906"; // 连接数据库密码 $mysql_database="meal"; // 数据库的名字 // 连接到数据库 $conn=mysql_connect($mysql_server_name, $mysql_username, $mysql_password); // 从表中提取信息的sql语句 $strsql="SELECT * FROM `address`"; // 执行sql查询 $result=mysql_db_query($mysql_database, $strsql, $conn); // 获取查询结果 $row=mysql_fetch_row($result); echo '<font face="verdana">'; echo '<table border="1" cellpadding="1" cellspacing="2">'; // 显示字段名称 echo "</b><tr></b>"; for ($i=0; $i<mysql_num_fields($result); $i++) { echo '<td bgcolor="#000F00"><b>'. mysql_field_name($result, $i); echo "</b></td></b>"; } echo "</tr></b>"; // 定位到第一条记录 mysql_data_seek($result, 0); // 循环取出记录 while ($row=mysql_fetch_row($result)) { echo "<tr></b>"; for ($i=0; $i<mysql_num_fields($result); $i++ ) { echo '<td bgcolor="#00FF00">'; echo $row[$i]; echo '</td>'; } echo "</tr></b>"; } echo "</table></b>"; echo "</font>"; // 释放资源 mysql_free_result($result); // 关闭连接 mysql_close($conn); ?>
PHP页面效果:
![](http://images2015.cnblogs.com/blog/731716/201512/731716-20151214212817052-1734538424.png)
MySql远程连接:
现在,问题来了,实际开发当然是访问服务器的MySQL。下面说说,设置MySQL的远程访问,以Windows Server 2012+MySQL-5.0.67为例:
![](http://images2015.cnblogs.com/blog/731716/201512/731716-20151214213817912-1190270490.png)
使用“GRANT ALL PRIVILEGES ON %s1.* TO %s2@'%s3' IDENTIFIED BY '%s4';”命令可以更改远程连接的设置 其中 %s1 为 可远程连接的数据库名,若允许访问所有则为'*' %s2 为 供远程连接的用户名 %s3 为 限制可连接该数据库的IP的地址,若不限制可为'%' %s4 为 供远程连接的密码 最后使用“flush privileges;”命令刷新刚才修改的权限,使其生效。
这样就可以通过phpMyAdmin来访问了,不过测试的MySQL版本过低,会出现:
![](http://images2015.cnblogs.com/blog/731716/201512/731716-20151214214822256-314723585.png)
相关文章推荐
- Linux-CentOS XAMPP Apache 支持mp4与flv拖动播放的功能模块
- Apache Commons 工具集
- Linux-CentOS XAMPP Apache mod_xsendfile 为php提供更快的文件下载
- java.lang.NoSuchMethodError: org.apache.xerces.impl.xs.XMLSchemaLoader.loadGrammar
- Windows下的PHP开发环境搭建——PHP线程安全与非线程安全、Apache版本选择,及详解五种运行模式。
- Apache防盗链
- 配置Apache服务器与PHP语言
- Apache配置静态缓存
- Apache Commons 工具集使用简介
- PHP介绍和Apache的Module、CGI与FastCGI
- Apache2.4+PHP5.6+Mysql5.6(web环境搭建)
- apache日志切割与不记录指定文件类型日志
- apache服务器设置
- apache服务器设置
- 用apache commons-pool2建立thrift连接池
- 严重: Exception occurred during processing request: org.apache.struts2.json.JSONException: org.hiberna
- Linux(CentOS)下的apache服务器配置与管理
- apache ab测试并发命令的使用
- Could not resolve archetype org.apache.maven.archetypes:maven-archetype-quickstart
- java.lang.NoClassDefFoundError: org/apache/juli/logging/LogFactory