Mac下配置PHP+Apache+phpMyAdmin+MySql远程链接
2024-08-22 03:54:13
最近的项目是微信公众号平台的开发,微信官方给出的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. (Unix)
Server built: Aug ::
下面是基本的命令:
// 启动Apache服务
sudo apachectl start // 重新启动Apache服务
sudo apachectl restart // 关闭Apache服务
sudo apachectl stop
配置Apache增加对PHP的支持
.编辑http.conf配置文件,终端如下:
sudo vim /etc/apache2/http.conf
.去掉以下部分的注释:
LoadModule php5_module libexec/apache2/libphp5.so(即去掉前面的#)
.重启Apache服务:
sudo apachectl restart
接下来,直接用浏览器打开http://localhost出现以下页面,即为配置成功
现在可以自己写一个PHP文件,test1.php放在,/Library/WebServer/Documents下
打开浏览器,http://localhost/test1.php
phpMyAdmin:
下面配置phpMyAdmin,我暂时也不知道这东西有什么卵用,习惯了终端,当作MySQL-Front用?
在http://www.phpmyadmin.net/home_page/downloads.php上下载最新版本
将解压得到的文件夹,重命名为phpmyadmin,移动到:
在该文件夹下新建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:端口号 直接登录
下面再来一个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页面效果:
MySql远程连接:
现在,问题来了,实际开发当然是访问服务器的MySQL。
下面说说,设置MySQL的远程访问,以Windows Server 2012+MySQL-5.0.67为例:
使用“GRANT ALL PRIVILEGES ON %s1.* TO %s2@'%s3' IDENTIFIED BY '%s4';”命令可以更改远程连接的设置
其中 %s1 为 可远程连接的数据库名,若允许访问所有则为'*'
%s2 为 供远程连接的用户名
%s3 为 限制可连接该数据库的IP的地址,若不限制可为'%'
%s4 为 供远程连接的密码
最后使用“flush privileges;”命令刷新刚才修改的权限,使其生效。
这样就可以通过phpMyAdmin来访问了,不过测试的MySQL版本过低,会出现:
最新文章
- WebService 生成类的命令语句
- 挖Linux中的古老缩略语
- Orchard创建自定义表单
- 【转载】Asp.net Mvc 入门视频教程
- instanceof的用法①
- SQL日期格式转换(经常用又经常忘记的东西)转载自http://www.cnblogs.com/wangyuelang0526/archive/2012/06/06/2538224.html
- C#:读取配置文件
- 福利 城市名的python list
- android ndk调用OpenGL 实现纹理贴图Texture
- SpringBoot基础系列-使用日志
- Ubuntu 16.04.3 LTS 安装 MongoDB
- HDFS退出安全模式
- Codeforces Round #296 (Div. 1) B - Clique Problem
- 第一个maven项目
- mysql 随机获取数据并插入到数据库中
- HDU 1936 区间贪心
- pkgadd 软件安装二种方法
- 浅谈JS严格模式
- 【CentOS 6.5】QtCreator启动时关于dbus-1的错误解决方法
- 第8章 scrapy进阶开发(2)