今天MacBook到手了,就正式开始学习php了。先搭个环境,由于MacBook自带了Apache和php所以只要修改下配置启动就可以了。

 1.启用root用户(如果不启用root,下面的命令前都要加sudo,并且每次都要输入密码,比较麻烦)

  sudo -i 和 su都可以切换到root账户,要退回普通账户就执行“exit”即可,sudo -i要退回普通账户执行“logout”也可。(这两个命令具体有啥区别就不知道了。。以后再研究)

2.启用Apache

  在终端里执行apachectl start,这时的根目录是/Libary/WebServer/Documents/,可以在这里放文件测试。

 3.启用php

  打开/etc/apache2/httpd.conf文件,把#loadModule php5_module libexec/apache2/libphp5.so 前面的#去掉。

  然后将/etc/php.ini.default复制为/etc/php.ini。cp /etc/php.ini.default /etc/php.ini

4.测试

  在/Libary/WebServer/Documents/目录下新建个test.php: touch /Libary/WebServer/Documents/test.php。

  test.php 就经典的一句:<?php echo "hello world";?>

  浏览器访问http://localhost/test.php,出现hello world 就大功告成了。

 5.更改根目录

  不习惯在默认目录下开发,就换到的自己的workspace中,这里很重要的一点就是要设置文件夹权限,文件夹需要有执行权限x,我设置了755就可以了。

  mkdir /Users/user/workspace

  chmod 755 /User/user/workspace

  把/etc/apache2/httpd.conf文件里的/Libary/WebServer/Documents/都替换成自己的路径 /User/user/workspace

  重启Apache,apachectl restart,再次访问localhost即显示的是更改后的文件里的内容了。

 再一次大功告成了。

 遇到的问题

  在更改Apache的document-root后,访问localhost一直403,查看error-log后发现错误:Permission denied: access to / denied (filesystem path '/Users/user/workspace') because search permissions are missing on a component of the path,在网上查找后发现是文件夹权限问题,把文件夹权限设置为755后就可以正常访问了。如果文件目录嵌套很深,要从最里面的文件权限开始查看,确定要让文件夹有x权限。

【自学php】第一天-macbook上配置php的更多相关文章

  1. eclipse弃坑记第一篇之在idea上配置Tomcat环境并创建Javaweb项目的详细步骤原创

    IntelliJ IDEA是一款功能强大的开发工具,在代码自动提示.重构.J2EE支持.各类版本工具(如git.svn.github).maven等方面都有很好的应用. IntelliJ IDEA有免 ...

  2. 自学Zabbix3.12.6-动作Action-Escalations配置

    点击返回:自学Zabbix之路 点击返回:自学Zabbix4.0之路 点击返回:自学zabbix集锦 3.12.6 自学Zabbix3.12.6-动作Action-Escalations配置 1. 概 ...

  3. macbook上安装虚拟机软件如何操作?

    很多用户都不太熟悉苹果系统,用惯了Windows之后再过渡到MacOS难免会有些不习惯.为了使我们又可以用回那些熟悉的Windows应用,比较常见的办法就是安装macbook虚拟机.下面小编就教大家一 ...

  4. IIS7.5 在已有的WEB网站上配置FTP发布

    IIS7.5 有了很多新特性,例如FashCGI,Rewrite 模块的内置,简易的FTP发布等等,但是即使是微软,也没有详细的文档,本文详细的介绍了如何在现有的WEB网站上建立FTP发布. IIS ...

  5. OpenCV 第一课(安装与配置)

    OpenCV 第一课(安装与配置) win10,opencv-2.4.13, 安装, vs2013, 配置 下载安装软件 官网OpenCV下载地址下载最新版本,我下载的是opencv.2.4.13,然 ...

  6. 在Windows 2008/2008 R2 上配置IIS 7.0/7.5 故障转移集群

    本文主要是从:http://support.microsoft.com/kb/970759/zh-cn,直接转载,稍作修改裁剪而来,其中红色粗体部分,是我特别要说明的 若要配置 IIS 7.0 和 7 ...

  7. 在Windows Azure上配置VM主备切换(1)——Linux篇

    对任何一个上线系统来说,高可用设计是不可或缺的一个环节,这样才可以确保应用可以持续.稳定的运行,而不是频繁的掉线.停机.高可用设计的核心思路很简单,就是消除一切单点故障,将单点链路或者节点升级为多点. ...

  8. Linux上配置使用iSCSI详细说明

    本文详细介绍iSCSI相关的内容,以及在Linux上如何实现iSCSI. 第1章 iSCSI简介 1.1 scsi和iscsi 传统的SCSI技术是存储设备最基本的标准协议,但通常需要设备互相靠近并用 ...

  9. Python快速学习01:Eclipse上配置PyDev & 'Hello World !'

    前言 系列文章:[传送门] 答应了Vamei,帮他传文章,Python,顺自己学学. 很喜欢这种黏黏的语言 突然发现--我用的GoAgent(谷歌FQ软件),竟然是Python编的. 简介 Pytho ...

随机推荐

  1. Android Adapter代码片

    /** * Adapter for grid of coupons. */ private static class CouponAdapter extends BaseAdapter { priva ...

  2. shonc项目中的设计资讯模块 php 字符串操作与正则表达式 strip_tags preg_match

    问题:当description 内容要求description的值选用资讯内容的前50个汉字.资讯内容可能有图片. 此时需要对输出的内容进行处理 php 正则表达式处理,编辑器输出的内容 只取图片: ...

  3. MYSQL 查看可用的字符集的 2 方法

    方法 1. show character set; 方法 2. show collation;

  4. AprioriTID algorithm

    What is AprioriTID? AprioriTID is an algorithm for discovering frequent itemsets (groups of items ap ...

  5. poj 1050 To the Max_dp求最大子矩阵和

    题意:求最大子矩阵和 利用dp[i]每次向下更新,构成竖起的单条矩阵,再按不小于零就加起来来更新,构成更大的矩阵 #include <iostream> #include<cstdi ...

  6. wait函数返回值总结,孤儿进程与僵尸进程[总结]

    http://blog.csdn.net/astrotycoon/article/details/41172389 wait函数返回值总结 http://www.cnblogs.com/Anker/p ...

  7. Linux 零碎知识点

    ln -s ../libs/ libs 在当前目录下建立一个符号链接文件libs,使它指向上一层目录的libs文件夹 关于su和su -的区别切换用户是可以使用su tom或者su - tom来实现, ...

  8. #include <boost/asio.hpp>

    TCP服务端和客户端 TCP服务端 #include <iostream> #include <stdlib.h> #include <boost/asio.hpp> ...

  9. 使用View Model从表现层分离领域模型

    本文来自:http://www.cnblogs.com/shanyou/archive/2010/04/03/1703501.html Model-View-Controller(模型-视图-控制器, ...

  10. SQL Server中的临时表和表变量

    SQL Server中的临时表和表变量 作者:DrillChina出处:blog2008-07-08 10:05 在SQL Server的性能调优中,有一个不可比拟的问题:那就是如何在一段需要长时间的 ...