2015年5月9日更新
更新内容:针对Mac OS X 10.10.3不能访问用户目录
http://localhost/~lulin
检查Apache版本是否升级
Server version: Apache/2.4.10 (Unix)
Server built: Jan 8 2015 20:48:33
修改的地方有以下 3 点:
(1)/etc/apache2/httpd.conf
打开如下配置(去除#注释)
LoadModule authz_core_module libexec/apache2/mod_authz_core.so
LoadModule authz_host_module libexec/apache2/mod_authz_host.so
# 这两项是重点检查对象
LoadModule userdir_module libexec/apache2/mod_userdir.so
Include /private/etc/apache2/extra/httpd-userdir.conf
修改完后访问会出现,所以还需要修改(2)中的文件
Forbidden
You don't have permission to access /~lulin/ on this server.
(2)/etc/apache2/extra/httpd-userdir.conf
打开如下配置(去除#注释)
Include /private/etc/apache2/users/*.conf
(3)修改之前 10.9 中 /etc/apache2/users/<youusername>.conf
<Directory "/Users/lulin/Sites/">
Options Indexes MultiViews
AllowOverride None
Require all granted
</Directory>
前言
因为每次重新安装系统都需要配置一下Apache、MySQL、PHP的环境,网上的文章又不完整或者不完全符合自己的情况,所以写下一篇文章来记录一下,保证99%配置成功,还剩1%由于各种奇葩环境原因。。。主要从 6 个方面进行记录:
启动Apache
建立个人的网站目录
启动php的解析功能
安装、启动mysql
修改mysql root密码
使用客户端连接mysql
一、启动Apache
查看Apache的版本信息:
$ httpd -v
Server version: Apache/2.2.26 (Unix)
Server built: Dec 10 2013 22:09:38
启动Apache
$ sudo apachectl start
如果终端中显示:
org.apache.httpd: Already loaded
就表示已经启动过了,可以使用重启命令:
$ sudo apachectl restart
这样我们的准备工作就做完了,第一步不要太复杂,不然配置会混乱,不太好还原之前的状态。接下来访问:
如果出现如下图情况,就表示一切顺利,我们再接下去配置,如果没有成功,其实就不推荐再折腾啦,重装系统是最快的解决方案。。。
接下来我们来看看为什么吧。
Apache默认的网站目录:/Library/WebServer/Documents
默认访问的文件:/Library/WebServer/Documents/index.html.en
好吧,这样就很好理解了,我们不需要看Apache的配置文件,这样只会让配置变得复杂。
当然,配置好啦之后,我们就应该了解为什么是这个目录,现在可以使用快捷键(shift+command+G)打开对应目录(有界面还是尽量使用可视化操作,会让你更加专注的学习正在配置的东西):
/etc/apache2
你会发现有一个:httpd.conf 文件,这个文件里面就配置了默认的网站目录,你可以使用sublime text等编辑器(使用编辑器可以更好的处理权限等问题)查找“/Library/WebServer/Documents”,一看就明白了。
OK,现在上面的入门配置好啦,接下来就需要在/Users/<yourname>下配置自己的网站目录,你可能要问为什么,首先,使用默认的目录不是程序员的范,其次就是那个目录的权限太高,每次修改内容都需要使用sudo权限,不太方便。
二、建立个人的网站目录
首先,需要在你的个人目录下面创建一个Sites目录(为什么叫这个名字呢?可以google一下,是有故事的,这里就不多描述了,单纯的先把成果搞出来),网上教使用:
$ mkdir Sites
这种方式来创建目录,这里必须要说一下,既然你用的Mac OS X可视化系统,需要这么复杂吗?右键,新建文件夹,就OK。
接下来我们就需要修改一些配置了:
-
搞一个自己的配置文件,放入:/etc/apache2/users,比如我的配置
/etc/apache2/users/lulin.conf
-
提升你对该配置文件的权限,这个用终端瞬间秒杀
$ sudo chmod 755 /etc/apache2/users/lulin.conf //验证一下修改正确没有,首先验证lulin.conf文件,其次验证/etc/apache2/users这个目录的权限,不然遇到蛋疼的时候没头绪 $ cd /etc/apache2/users && ls -la $ cd .. && ls -la
显示如下图情况就表示没问题了:
最后需要配置一下"/etc/apache2/users/lulin.conf"这个conf文件,使用sublime text打开加入内容如下:
<Directory "/Users/lulin/Sites/">
Options Indexes MultiViews
AllowOverride All
Order allow,deny
Allow from all
</Directory>
改了配置嘛,不管怎么,要我们的环境保证是修改后的结果,就重启一下Apache吧。
$ sudo apachectl restart
输入访问地址:
http://localhost/~lulin/
如果出现权限问题,那么可以查看一下“/etc/apache2/users/lulin.conf”这里的文件权限是否正确。
这样个人的自定义目录也搞定了,接下我们如果想访问php文件的话就还需要一点简单配置,不然的话php文件会被当做普通文本来解析,离成功不远啦。
三、启动php的解析功能
使用快捷键直接定位到配置文件:
/etc/apache2/httpd.conf
打开后只需要去除一句话的注释即可搞定,使用编辑器来搜索吧,so easy!(去除前面的#号即可,这就是conf的特性而已)
LoadModule php5_module libexec/apache2/libphp5.so
接下来老规矩,保证不踩坑,重启一下Apache。
$ sudo apachectl restart
写一个简单的php文件测试一下配置结果,这次我们把php文件建在我们个人的网站目录"/Users/lulin/Sites"吧。
新建一个 index.php 页面,Apache会默认解析index.php
-
敲入简单代码,别偷懒,敲完整哦,不然万一你的某个配置没开就踩坑里了:
<?php echo phpinfo(); ?>
显示下面经典测试php的页面,即OK。
四、安装、启动mysql
安装去官网下载一份就行,我这里下载的版本是:mysql-5.6.21-osx10.9-x86_64.dmg
建立下载dmg文件,安装方便,会默认建立软连接等东西。
安装完后,我们先找到安装的mysql,这样方便以后配置,简单的查看目录就在:
//软连接
/usr/local/mysql
//真实目录
/usr/local/mysql-5.6.21-osx10.8-x86_64
安装的详情可以查看官方说明,我找了很多资料发现还是官方比较直观。
不过官网更新不是特别快,其中的安装默认启动项已经在我安装的版本不需要自己搞了,已经有了,可以查看【系统偏好设置查看】,安装MySQL后默认是关闭的,我们也进去启动一下。
现在依然在终端输入:mysql 命令还不能识别到命令,我们需要配置环境变量,这个在终端下面好弄一点,我们就采用命令的方式修改:
$ sudo vim ~/.bash_profile
在.bash_profile文件中加入MySQL的可执行目录:
export PATH="/usr/local/mysql/bin:$PATH"
最后刷新一下配置:
$ source ~/.bash_profile
接下来我们就可以在终端之间输入:mysql 命令就能够以非root用户登录了。
现在MySQL环境搭建完成,要正常使用我们需要配置root用户,默认root用户的密码是空值,实际使用肯定需要修改一下。
五、修改mysql root密码
网上介绍了很多方法,我觉得最直接,最快速的方法是使用空密码,以root用户的身份登录进入MySQL控制台,然后再去更新密码即可。
$ mysql -u root -p
$ 直接回车登录
//下面模拟MySQL控制台
//因为是在MySQL下,所以SQL关键字采用小写更方便,如果你是Oracle的话还是推荐都是用大写
mysql > show databases; //看一下所有数据是否齐全
use mysql; //切换到mysql库
update user set password=password('lulin') where user='root';
flush privileges; //一定要记住刷新权限,不然修改密码不生效
exit; //退出,使用修改后的密码重新登录,确定是否修改成功
现在MySQL的配置基本上结束了,更多的配置可以配置my.cnf,在windows下是my.ini,都是其他文件重命名的,这个可以google查阅到详细配置。
六、使用客户端连接mysql
上面的配置结束啦,我们不可能每次都在MySQL控制台搞吧,效率太low,这里我介绍几个客户端:
Mac OS X平台
Querious
这个使用过一段时间,需要收费,不太好破解官方出的最新版本,不过还挺好用,这里我就不用了,找个免费的用用。
Sequel Pro
下载地址:http://www.sequelpro.com/download
可能被墙访问有点慢,我就将最新版放入了360云盘,大家可以去下。
云盘地址:http://yunpan.cn/cA5FY26fdqTsm (提取码:b343)
使用就so easy啦,Sequel Pro 配置如下图:
记得把常用连接加入收藏就行,不然每次都要输来输去,Host建立使用127.0.0.1,原因可以google,不过Querious之前我用的时候输入localhost会默认转换成127.0.0.1,还比较人性化。
Windows平台
只推荐一款利器,用过很多,没有之一,就它最好用:
navicat for mysql
这个客户端是收费的,不过如果你使用的时8.0版本,在baidu搜索:
navicat for mysql 注册码
关键字,第一个搜索结果里面就有注册码。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。