基本环境和配置

Mac 系统:  OS X EI Caption  10.11.4

当前Mac用户名:

ceshi

需要熟知的几个基本概念和操作:

1. 新建一个终端默认的是路径是:

/Users/当前用户名, 因此本教程的结果是:

/Users/ceshi

2. 命令行显示文件

显示非隐藏文件:

ls

显示隐藏文件和非隐藏文件:

ls -a

3. 显示mac系统的所有隐藏文件

defaults write com.apple.finder AppleShowAllFiles -bool true

一: Apache配置

1.1 启动Apache

OSX 已经自带Apache服务,所以只有一行命令行就可以启动Apache

开启Apache服务:

sudo apachectl start 

停止Apache服务:

sudo apachectl stop 

重启Apache服务:

sudo apachectl restart 

以上3条命令,在我本机上测试没有返回信息(这太让人崩溃了).

查看Apache版本:

httpd -v

Apache配置的默认目录是:

/etc/apache2

貌似这个无法去更改.主要修改里面的httpd.conf文件

验证Apache服务器是否开启:

在浏览器中输入: localhost

会在浏览器页面显示:

It works!

因为在默认的Apache配置情况下,Apache的Document Root目录是:

/Library/WebServer/Documents

这个It works 就是里面的info.php打印出来的。下面介绍如何将apache的这个默认目录更改到用户目录下。

你可以打开info.php文件:可以看到是:

1.2 更改Apache默认目录

1. 选择你想更改后的Apache默认目录例如:

/Users/ceshi/Documents/apache/sites

这里的目录可以随便填写

2. 进到 /etc/apache2/users/目录下,输入一下命令行

sudo vim ceshi.conf

这里 一定要用 sudo, 否则你无法编辑
注意把 ceshi 用户名换成你自己的 用户名

编辑的内容:

<Directory "/Users/ceshi/Documents/apache/sites">
Options Indexes MultiViews
AllowOverride All
Require all granted
</Directory>

3. 更改该文件的权限:

sudo chmod  ceshi.conf

4. 进到/etc/apache2/目录,

sudo vim 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 注释放开。 
PS:在vim下只要切换到命令模式,然后输入/”words you need find”就能快速找到需要查找的词。

注释就是把前面的  #  给去掉.

同时修改:

DocumentRoot "/Library/WebServer/Documents"
<Directory "/Library/WebServer/Documents">

为:

DocumentRoot "/Users/ceshi/Documents/apache/sites"
<Directory "/Users/ceshi/Documents/apache/sites">

5.进到/etc/apache2/extra/目录,

sudo vim httpd-userdir.conf 

将Include /private/etc/apache2/users/*.conf 这句话放开注释。

6. 重启Apache

sudo apachectl restart

7. 复制文件

cp /Library/WebServer/Documents/index.en /Users/ceshi/Documents/apache/sites/index.html

8. 这个时候再在浏览器输入localhost.

这样Apache就成功修改目录了.

注释:

在此期间如果遇到类似于这样的错误:

403 Forbidden “Forbidden You don't have permission to access / on this server” 或者是其他各种错误.

一定要先去Apache错误log日志里去找到错误的原因:

错误log日志目录:

/private/var/log/apache2

下面有两个文件

用文本编辑器打开error_log文件,找到里面的错误,然后自行google一下就能找到修复的答案, 不要直接搜Forbidden You don't have permission to access / on this server, 因为有很多种情况都会导致上述的错误的.

例如文件夹的权限

在apache目录下没有index.php,index.html等文件.

二: php配置

PHP的配置非常简单,就一个事,

1. 进到/etc/apache2/目录,编辑httpd.conf,找到LoadModule php5_module libexec/apache2/libphp5.so将其放开注释就行了。

2. 然后sudo apachectl restart 重启,

3. 在Apache的目录上

/Users/ceshi/Documents/apache/sites

apache配置的目录

新建一个index.php,里面echo phpinfo() ,就可以看到效果了.

4. 在浏览器上刷新localhost, 就会看到:

三:安装MySql

如果你是初次接触服务端知识: 一定要先问问你周围的朋友当前MySql的主要用哪个版本.

我在安装MySql的时候,先去官网看的,发现5.7是最新的,然后开始各种安装,遇到的问题,上网各种搜索.结果完全无法解决.

因为5.7 有很多的情况跟当前主要用的5.6版本都是有区别的.

1. 去官网下载5.6的版本:

最好选择dmg格式的

http://dev.mysql.com/downloads/mysql/5.6.html#downloads

需要注册Oracle账号,才能下载.

我当前下载的是这个:

http://cdn.mysql.com//Downloads/MySQL-5.6/mysql-5.6.30-osx10.11-x86_64.dmg

2. 双击dmg文件直接傻瓜式安装就可以了.

默认状态下, mysql的配置目录在:

/usr/local/mysql

3. 启动MySql

sudo /usr/local/mysql/support-files/mysql.server start

4. 配置环境变量

打开新的终端,默认的是用户根目录:

/Users/ceshi

输入

vim .bash_profile

输入:
export PATH=”/usr/local/mysql/bin:$PATH” 

注释: .bash_profile  有可能不存在.

退出 vim

然后在终端输入:

source .bash_profile

使环境变量生效。接着就可以直接在终端里输入mysql命令了。

然后通过:

mysqladmin -u root password '123456'

去更改密码,123456 就是你的密码,可以换成任意的密码.

有的时候

启动 Apache 命令: sudo apachectl start

关闭命令: sudo apachectl stop

重启命令:sudo apachectl restart

查看 Apache 版本命令:httpd -v

apache默认站点目录: /Library(资源库)/WebServer/Documents/

修改俺怕车站点目录:  编辑这个文件的相关行:

sudo vi /etc/apache2/httpd.conf

apache log日志路径: /private/var/log/apache2

Mac OSX 搭建 Apache php mySql phpMyAdmin 开发环境的更多相关文章

  1. Mac下搭建Apache+PHP+MySql运行环境

    https://www.cnblogs.com/xiaovw/p/8854896.html 前言 我们在Mac上搭建Apache+PHP+MySql环境是非常方便的,因为Mac预装的有Apache和P ...

  2. Mac下搭建基于PlatformIO的嵌入式开发环境(STM32开发)

    PlatformIO简介 PlatformIO是开源的物联网开发生态系统.提供跨平台的代码构建器.集成开发环境(IDE),兼容 Arduino,ESP8266和mbed等 支持在Windows.Lin ...

  3. Ubuntu搭建 Apache、MySQL、PHP环境

    以Ubuntu 16.04为例: 1.安装MysSQL 打开命令行输入 :sudo apt-get install mysql-server 输入管理员密码 选择Y 在安装的中间会出现输入Mysql的 ...

  4. Apache+MySQL+PHP开发环境的搭建(二)

    通过自主选择相应的apache,mysql,php等软件,根据自己的应用开发需求进行安装.此方法搭建的环境自主性较强,搭建过程较为复杂,繁琐. 1.所需软件: Apache: http-2.2.22- ...

  5. Apache+MySQL+PHP开发环境的搭建(一)

    通过套件来安装和配置php开发环境. 1.所需软件:AppServ(因为是开源,任何网站都能下载) 安装本软件基本上就是下一步. 2.进行安装 选择一个盘安装该软件点击next继续: 根据自己的实际情 ...

  6. Apache+PHP+MySQL+phpMyAdmin环境搭建

    最近在学习web服务端开发,一开始是使用wamp的,后来决定自己完整配置一下环境,并把整个过程记录下来.其中,Apache是服务器,php是用来编写服务端的语言,MySQL作为数据库,phpMyAdm ...

  7. windows下搭建Apache+Mysql+PHP开发环境

    原文:windows下搭建Apache+Mysql+PHP开发环境 要求 必备知识 熟悉基本编程环境搭建. 运行环境 windows 7(64位); Apache2.2;MySQL Server 5. ...

  8. 腾讯云服务器搭建Apache/PHP/MySQL环境

    软件环境 Windows Server 2008 R2 企业版 SP1 64位 刚刚进入 Windows Server ,你会看到以下界面: 列出了服务器的基础信息和常用配置 下载 XAMPP htt ...

  9. Django Python MySQL Linux 开发环境搭建

    Django Python MySQL Linux 开发环境搭建 1.安装Python 进行Python开发,首先必须安装python,对于linux 或者Mac 用户,python已经预装. 在命令 ...

随机推荐

  1. 2017-4-26 winform 菜单和工具栏

    如何让radiobutton进行分组: 用Panel    相当于div 菜单和工具栏: MenuStrip(菜单条) ShortcutKeys-------------------------与菜单 ...

  2. [ext4] 磁盘布局 - extent tree

    传统的类Unix文件系统,比如Ext3,都是使用一个间接数据块映射表来记录每一个数据块的分配情况的.但是这种机制对于超大文件的存储是有缺陷的,特别是当对超大文件进行删除和截断操作时.映射表会对每一个数 ...

  3. C语言精要总结-指针系列(一)

    考虑到指针内容繁多,这里将指针作为一个系列,从简入繁,一点一点深挖并掌握这C语言的精华.初步计划如下 此文为指针系列第一篇: C语言精要总结-指针系列(一) 内存与地址 我们可以把内存看做一排连续的房 ...

  4. 原创-angularjs2不同组件间的通信

    AngualrJs2官方方法是以@Input,@Output来实现组件间的相互传值,而且组件之间必须父子关系,下面给大家提供一个简单的方法,实现组件间的传值,不仅仅是父子组件,跨模块的组件也可以实现传 ...

  5. 详解Java动态代理机制

    之前介绍的反射和注解都是Java中的动态特性,还有即将介绍的动态代理也是Java中的一个动态特性.这些动态特性使得我们的程序很灵活.动态代理是面向AOP编程的基础.通过动态代理,我们可以在运行时动态创 ...

  6. (详细)php实现留言板---会话控制-----------2017-05-08

    要实现留言功能,发送者和接受者必不可少,其次就是留言时间留言内容. 要实现的功能: 1.登录者只能查看自己和所有人的信息,并能够给好友留言 2.留言板页面,好友采取下拉列表,当留言信息为空时,显示提示 ...

  7. 使用命令行的方式操作hdfs

    必须要用打全路径,没有相对路径的概念,或者cd的概念 打印报告: 所有的命令显示出来: 以下的操作分别是创建创建文件夹,删除文件夹,显示文件夹,可见删除文件夹只能够使用-rmr . 从本地拷贝文件到h ...

  8. PAT1028. List Sorting (25)---strcmp

    题目链接为:https://www.patest.cn/contests/pat-a-practise/1028 1028. List Sorting (25) Excel can sort reco ...

  9. C# 中直接调用js方法

    请注意,我这段代码中实现js方法中有 funcName(argument) 这种一个入参的调用. using System; namespace game2_36.Common { public cl ...

  10. JAVA Semaphore详解

    Semaphore(信号量):是一种计数器,用来保护一个或者多个共享资源的访问.如果线程要访问一个资源就必须先获得信号量.如果信号量内部计数器大于0,信号量减1,然后允许共享这个资源:否则,如果信号量 ...