首页 后端开发 php教程 5.1 网络基础->1.2.1 配置Apache服务器和PHP(Mac 10.10以上)

5.1 网络基础->1.2.1 配置Apache服务器和PHP(Mac 10.10以上)

Jun 23, 2016 pm 01:09 PM

本文并非最终版本,如有更新或更正会第一时间置顶,联系方式详见文末

为什么用 “Apache":
1.  使用最广的 Web 服务器、IIS(微软 Intenet Infomation Server)2.  Mac自带,只需要修改几个配置就可以,简单,快捷3.  有些特殊的服务器功能,Apache都能很好的支持(例如:HTTP PUT/DELETE 操作,HTTPS 服务)
登录后复制

步骤如下:
1、在 Finder 中 /Users/用户名 下创建一个 Sites 的文件夹,用于存放网页等文件(不能放在桌面或文档等个人文件夹)
2、打开【终端】
//切换工作目录cd /etc/apache2
登录后复制
3、备份文件:sudo 表示使用管理员权限执行命令,以保护系统文件上会被破坏,使用sudo需要密码
// cp (copy 的缩写)   httpd.conf (源文件)   httpd.conf.bak (目标文件)sudo cp httpd.conf httpd.conf.bak//提示:如果后续操作出现错误!可以使用以下命令,恢复备份过的 httpd.conf 文件sudo cp httpd.conf.bak httpd.conf
登录后复制
4、编辑 httpd.conf:修改配置文件中的"两个路径",指向刚刚创建的文件
//用vim编辑httpd.conf (vim里面只能用键盘,不能用鼠标)sudo vim httpd.conf//查找`DocumentRoot`/DocumentRoot//进入编辑模式i//修改`两处`引号中的路径DocumentRoot "/Users/用户名/Sites"<Directory "/Users/用户名/Sites">//继续向下,找到 Options FollowSymLinks Multiviews//加一个单词 `Indexes`,修改后的结果如下:Options Indexes FollowSymLinks Multiviews//返回命令模式ESC
登录后复制
5、Mac系统默认已经安装php,只是没有激活,要使用php需要修改apache的配置文件
//查找php/php//将光标移动到首行0//删除行首注释 #x//保存并退出:wq
登录后复制
6、拷贝php.ini文件
//切换工作目录cd /etc//etc 目录有点类似于 windows/system32,存放配置文件的目录sudo cp php.ini.default php.ini//执行完后,ls 查看目录,有php.ini和php.ini.default两个文件//重新启动apache服务器//执行完后,看到下面有AHXXX,表示成功 (如: AH00558)sudo apachectl -k restart如果提示以下错误是正常的:httpd: Could not reliably determine the server's fully qualified domain name, using teacher.local for ServerNamehttpd not running, trying to start
登录后复制
7、测试
打开浏览器,在地址栏输入【127.0.0.1】,出现下图表示成功
登录后复制


常见问题:

1、如果通过【127.0.0.1】点击服务器上的文件,出现下载,或者只是显示一小段文字

解决办法:在终端中输入以下两个命令// 关闭 apache 服务器sudo apachectl -k stop// 重新再次启动 apachesudo apachectl -k start
登录后复制

2、每次启动计算机,Apache服务器默认是不会自动启动的,可以启动计算机之后,打开终端,输入以下命令

// 启动 apachesudo apachectl -k start
登录后复制

3、最常见的问题

交换文件已经存在,直接按字母 "d",可以删除交换文件!
登录后复制

4、执行脚本的时候,显示没有或拒绝访问!(可能是用 NTFS 格式的 U 盘拷贝到电脑的脚本!这会把文件本身的权限过滤掉!)以下是在终端中修改文件权限的指令!

// 查看当前文件夹中的文件访问权限ls -la// info.php是没有权限的文件名chmod 644 info.php// *.*是更改所有文件的访问权限为644chmod 644 *.*文件的访问权限:分为三组,3个为一组,出现字母的表示1,-表示0- r 只读- w 可写- x 执行(1组)管理员权限(2组)当前用户权限(3组)普通用户权限3组字母常见组合:110 000 000  ——> 600(管理员可读可写)110 100 100  ——> 644(所有人可读,管理员可读可写)111 111 111  ——> 644(所有人可读可写可执行)不推荐
登录后复制

5、其他命令:

//查询历史输入的命令history
登录后复制

作者:蓝田(Loto) 出处: 简书 如果你觉得本篇文章对你有所帮助,请点击文章末尾下方“喜欢” ^_^ 如有疑问,请在下方评论区回复OR微信OR发送邮件至 shorfng@126.com联系我。

本文版权归作者和本网站共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接。

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳图形设置
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您听不到任何人,如何修复音频
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25:如何解锁Myrise中的所有内容
4 周前 By 尊渡假赌尊渡假赌尊渡假赌

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

php中的卷曲:如何在REST API中使用PHP卷曲扩展 php中的卷曲:如何在REST API中使用PHP卷曲扩展 Mar 14, 2025 am 11:42 AM

PHP客户端URL(curl)扩展是开发人员的强大工具,可以与远程服务器和REST API无缝交互。通过利用Libcurl(备受尊敬的多协议文件传输库),PHP curl促进了有效的执行

解释PHP中晚期静态结合的概念。 解释PHP中晚期静态结合的概念。 Mar 21, 2025 pm 01:33 PM

文章讨论了PHP 5.3中引入的PHP中的晚期静态结合(LSB),从而允许静态方法的运行时分辨率调用以获得更灵活的继承。 LSB的实用应用和潜在的触摸

在PHP API中说明JSON Web令牌(JWT)及其用例。 在PHP API中说明JSON Web令牌(JWT)及其用例。 Apr 05, 2025 am 12:04 AM

JWT是一种基于JSON的开放标准,用于在各方之间安全地传输信息,主要用于身份验证和信息交换。1.JWT由Header、Payload和Signature三部分组成。2.JWT的工作原理包括生成JWT、验证JWT和解析Payload三个步骤。3.在PHP中使用JWT进行身份验证时,可以生成和验证JWT,并在高级用法中包含用户角色和权限信息。4.常见错误包括签名验证失败、令牌过期和Payload过大,调试技巧包括使用调试工具和日志记录。5.性能优化和最佳实践包括使用合适的签名算法、合理设置有效期、

框架安全功能:防止漏洞。 框架安全功能:防止漏洞。 Mar 28, 2025 pm 05:11 PM

文章讨论了框架中的基本安全功能,以防止漏洞,包括输入验证,身份验证和常规更新。

如何用PHP的cURL库发送包含JSON数据的POST请求? 如何用PHP的cURL库发送包含JSON数据的POST请求? Apr 01, 2025 pm 03:12 PM

使用PHP的cURL库发送JSON数据在PHP开发中,经常需要与外部API进行交互,其中一种常见的方式是使用cURL库发送POST�...

自定义/扩展框架:如何添加自定义功能。 自定义/扩展框架:如何添加自定义功能。 Mar 28, 2025 pm 05:12 PM

本文讨论了将自定义功能添加到框架上,专注于理解体系结构,识别扩展点以及集成和调试的最佳实践。

ReactPHP的非阻塞特性究竟是什么?如何处理其阻塞I/O操作? ReactPHP的非阻塞特性究竟是什么?如何处理其阻塞I/O操作? Apr 01, 2025 pm 03:09 PM

深入解读ReactPHP的非阻塞特性ReactPHP的一段官方介绍引起了不少开发者的疑问:“ReactPHPisnon-blockingbydefault....

See all articles