美文网首页我爱编程
在Mac OS X 下搭建Apache+PHP+Mysql(转载

在Mac OS X 下搭建Apache+PHP+Mysql(转载

作者: 滑翔Skate | 来源:发表于2017-11-10 16:43 被阅读0次

    原地址:http://www.mamicode.com/info-detail-516543.html

    简介

    Mac OS X是基于unix的操作系统,很多软件都集成在系统中。所以,对于配置PHP的开发环境相对于windows和Linux更简单。

    1. 启动Apache服务器

    打开终端(terminal),查看Apache和PHP版本

    $ apachectl -v && php -v
    Server version: Apache/2.4.9 (Unix)
    Server built:   Sep  9 2014 14:48:20
    PHP 5.5.14 (cli) (built: Sep  9 2014 19:09:25) 
    Copyright (c) 1997-2014 The PHP Group
    Zend Engine v2.5.0, Copyright (c) 1998-2014 Zend Technologies
    

    启动Apache服务器,操作需要切换root用户以避免用sudo时出问题。

    注意,以下操作均为root用户时操作,若不是root用户,每条操作都需加sudo。

    sudo su -
    apachectl start
    

    命令补充:
    (1) 重启Apache服务器

    apachectl restart
    

    (2) 关闭Apache服务器

    apachectl stop
    

    (3) 查看版本

    httpd -v
    apachectl -v
    

    点击 http://localhost/ 链接看到“It works!”则成功开启Apache服务器

    2. 配置PHP

    转到Apache目录下备份httpd.conf文件

    cd /etc/apache2/
    cp httpd.conf httpd.conf.bak
    

    备份好后,用vi打开httpd.conf文件,将LoadModule php5_module libexec/apache2/libphp5.so的#去掉

    vi httpd.conf
    
    #以下是httpd.conf文件内容
    #LoadModule rewrite_module libexec/apache2/
    mod_rewrite.so
    LoadModule php5_module libexec/apache2/
    libphp5.so
    #LoadModule hfs_apple_module libexec/apache2/
    mod_hfs_apple.so
    <IfModule unixd_module>
    #在LoadModule的倒数第二行
    

    重启Apache服务器

     apachectl restart
    

    查看默认服务器根目录

    grep "DocumentRoot" httpd.conf
    

    终端显示以下内容

    # DocumentRoot: The directory out of which you will serve your
    DocumentRoot "/Library/WebServer/Documents"
    

    用vi编写info.php

    vi  /Library/WebServer/Documents/info.php
    

    在info.php中输入

    <?php
    phpinfo();
    ?>
    

    打开http://localhost/info.php 链接查看PHP版本信息。

    3. 安装MySQL

    点击http://dev.mysql.com/downloads/mysql/ 选择Mac OS X中MySQL的dmg文件,download,(http://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.23-osx10.9-x86_64.dmg

    下载完成后点击安装,然后同意且继续直到完成安装。安装完成后,在“系统偏好设置中”打开MySQL服务器

    技术分享

    开启MySQL服务器后如下图

    技术分享

    开启MySQL服务器之后就可以进行数据库的操作了,在windows中习惯用命令行启动MySQL,可以在Mac的终端设置别名。打开终端,输入以下命令:

    alias mysql=‘/usr/local/mysql/bin/mysql‘
    

    刚安装好的MySQL的root用户是没有设置密码的,为了安全在设置好MySQL的别名后,在终端输入mysql,之后会显示MySQL的信息。

    在命令提示符后输入

    /usr/local/mysql/bin/mysqladmin -u root password 123456 
    

    则密码修改成功。

    4. PHP连接数据库

    在终端输入以下命令:

    cd /var 
    mkdir mysql
    cd mysql
    ln -s /tmp/mysql.sock mysql.sock
    

    否则,会报warning。

    终端输入以下命令:

    vi  /Library/WebServer/Documents/dbconnect.php
    

    在新建的PHP文件中输入:

    <?php
    $con = mysql_connect("localhost","root","123456");
    var_dump($con);
    if (!$con) {
            die(‘Could not connect: ‘ . mysql_error());
    }
    else {
            echo "connect success!";
    }
    // some code
    
    ?>
    

    打开http://localhost/dbconnect.php 查看连接结果。

    5. 修改根目录

    根目录是从文件系统共享文件的目录位置,Mac OS X拥有两种级别的web根目录,系统级和用户级。个人本地开发可以使用用户级根目录,这样就少去了不得不保持root用户的权限约束,但也要修改相应配置。

    Mac OS X的系统级根目录URL为:http://localhost 对应的文件目录 /Library/WebServer/Documents/

    Mac OS X的用户级根目录,对应文件共享目录为~/Sites,这个文件目录要自己创建,在普通用户的家(~)目录下

    首先,在你自己的文档中建立一个web根目录。 我建立的目录路径为 ‘

    ‘,然后在终端中输入以下命令:

    cd /etc/apache2/users
    vi username.conf
    

    在新建的文件中输入:

    <Directory "/Users/NY/Sites/">
    AllowOverride All
    Options Indexes MultiViews FollowSymLinks
    Require all granted
    </Directory>
    

    再设置文件权限

    chmod 644 username.conf
    

    打开httpd.conf

    vi /etc/apache2/httpd.conf
    

    加载模块,确保每行前的#都删除

    LoadModule authn_core_module libexec/apache2/mod_authn_core.so
    (模块加载的第6行)
    LoadModule authz_host_module libexec/apache2/mod_authz_host.so
    (模块加载的第7行)
    LoadModule userdir_module libexec/apache2/mod_userdir.so
    (模块加载的倒数第五行)
    

    然后,找到User home directories,删除include前的#

    # User home directories
    Include /private/etc/apache2/extra/httpd-userdir.conf
    

    接下来打开另外一个文件

    vi  /etc/apache2/extra/httpd-userdir.conf
    

    去掉下列设置前的注释

    Include /private/etc/apache2/users/*.conf
    

    重启Apache服务器,则完成设置后打开http://localhost/~NY/ 就可访问我的本地Sites目录

    最后,启用重定向

    vi /etc/apache2/httpd.conf
    

    第258行把AllowOverride none 改为 AllowOverride all

    相关文章

      网友评论

        本文标题:在Mac OS X 下搭建Apache+PHP+Mysql(转载

        本文链接:https://www.haomeiwen.com/subject/vlnbmxtx.html