macOS12安装 php7.1和apache

1. 安装php 7.1

macOS12不再自带php 

brew tap shivammathur/php

查看可安装版本

brew search php

 安装指定版本(禅道适用PHP运行环境(7.0/7.1/7.2版本))

brew install php@7.1

环境配置

vim  ~/.zshrc
export PATH="/usr/local/opt/php@7.1/bin:$PATH"'
export PATH="/usr/local/opt/php@7.1/sbin:$PATH"'
export LDFLAGS="-L/usr/local/opt/php@7.1/lib"
export CPPFLAGS="-I/usr/local/opt/php@7.1/include"
source ~/.zshrc

验证版本

php -v

2. 安装apache

一般mac系统自带,可以查看

sudo apachectl -v

Apache 服务器命令

sudo apachectl start //开启Apache服务 
sudo apachectl stop //停止Apache服务 
sudo apachectl restart //重启Apache服务

 

 没有的话再进行安装apache

brew install httpd
brew install lynx

启动apache服务

brew services start httpd

sudo apachectl status

 

sudo apachectl start

浏览器访问http://localhost:8080/,"It works!"表示服务已启动 

 

验证版本

httpd -v

或者

sudo apachectl -v

3. 融合apache和php

 打开Apache配置文件 httpd.conf

创建自己的证书,用来给PHP的 libphp.so 文件签名

将 php的libphp7.so(路径:/usr/local/Cellar/php@7.1/7.1.33_10/lib/httpd/modules/libphp7.so) 添加到apache中

/usr/local/Cellar/php@7.1/7.1.33_10/lib/httpd/modules/libphp7.so

1) 自带apache

sudo vi /etc/apache2/httpd.conf

 

source /etc/apache2/httpd.conf

 

 2) 通过brew安装

sudo vi /usr/local/etc/httpd/httpd.conf

 

LoadModule php7_module /usr/local/Cellar/php@7.1/7.1.33_10/lib/httpd/modules/libphp7.so

 

source /usr/local/etc/httpd/httpd.conf

3)重启apache

sudo apachectl restart

访问http://localhost:8080/

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/9436.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Rust 使用egui创建一个简单的下载器demo

仓库连接: https://github.com/GaN601/egui-demo-download-util 这是我第一个rust gui demo, 学习rust有挺长时间了, 但是一直没有落实到实践中, 本着对桌面应用的兴趣, 考察了slint、egui两种框架, 最后还是选择了egui. 这篇博客同时包含我当前的一些理解, 但是自身技术有限,…

Java 7大排序

🐵本篇文章将对数据结构中7大排序的知识进行讲解 一、插入排序 有一组待排序的数据array,以升序为例,从第二个数据开始(用tmp表示)依次遍历整组数据,每遍历到一个数据都再从tmp的前一个数据开始&#xff0…

LeetCode-2960. 统计已测试设备【数组 模拟】

LeetCode-2960. 统计已测试设备【数组 模拟】 题目描述:解题思路一:模拟解题思路二: 一次遍历,简洁写法解题思路三:0 题目描述: 给你一个长度为 n 、下标从 0 开始的整数数组 batteryPercentages &#xf…

Jenkins的原理及应用详解(六)

本系列文章简介: Jenkins是一种自动化构建工具,它的出现使得软件开发过程变得更加高效、可靠和可持续。它采用了一种事件驱动的架构,能够通过触发不同的事件来执行相应的构建任务和操作。Jenkins支持多种版本控制系统的集成,可以自…

【C++】字符串出现次数

文章目录 题目题目描述输入样例输入样例输出 思路AC代码 题目 题目描述 一个字符串中任意个连续的字符组成的子序列为该字符串的子串。给定子串s1和它的一个字符串s2,求s1在s2中出现的次数。 输入 第一行,表示字符串s1, 第二行&#xff0…

自动驾驶纵向控制算法

本文来源——b站忠厚老实的老王,链接:忠厚老实的老王投稿视频-忠厚老实的老王视频分享-哔哩哔哩视频 (bilibili.com),侵删。 功率和转速之间的关系就是:功率P等于转矩M乘以转速ω。并不是油门越大加速度就越大。 发动机和电机的转…

AngularJS基本概念

版本: AngularJs 1.x:https://angularjs.org/ AngularJs 2:https://angular.io/ 或 https://angular.cn/ 实现语言: Angular 1.x:使用ES(avaScript)编写,可直接在浏览器中运行。 Angular 2&#xff1a…

【机器学习】AI时代的核心驱动力

机器学习:AI时代的核心驱动力 一、引言二、机器学习的基本原理与应用三、机器学习算法概览四、代码实例:线性回归的Python实现 一、引言 在数字化浪潮席卷全球的今天,人工智能(AI)已经不再是科幻小说中的遥远概念&…

[muduo网络库]——muduo库三大核心组件之Channel类(剖析muduo网络库核心部分、设计思想)

接着上文[muduo网络库]——muduo库的Reactor模型(剖析muduo网络库核心部分、设计思想),接下来详细介绍一下这三大核心组件中的Channel类。 先回顾一下三大核心组件之间的关系。 接着我们进入正题。 Channel Channel类封装了一个 fd 、fd感兴…

MySQL安全性:用户、权限管理、ACL、加密连接及SQL安全

在数据库管理系统中,安全性始终是一个核心关注点。MySQL,作为广泛使用的开源关系型数据库管理系统,自然也不例外。本文将深入探讨MySQL的安全性,特别是用户和权限管理、访问控制列表(ACL)、加密连接&#x…

【STM32 |程序实测】LED灯闪烁、LED灯流水线、蜂鸣器

LED闪烁&LED流水灯&蜂鸣器的面包板接线图,及对应程序示例 LED闪烁 面包板接线图如下 开启APB2时钟,并且在GPIOA上进行配置,推挽输出,引脚A0,50HZ速度 #include "stm32f10x.h" /…

[Linux][网络][网络层][IP协议]详细讲解

目录 0.基本概念1.IP协议头格式2.IP分片与组装1.为什么要分片?2.分片后谁来组装?3.这个分片操作传输层知道吗?4.如何识别报文和报文的不同?5.接收端,如何得知报文是独立的还是一个分片?6.如何区别哪些分片是…

【论文泛读|附源码】如何进行动力学重构? 神经网络自动编码器结合SINDy发现数据背后蕴含的方程

这一篇文章叫做 数据驱动的坐标发现与方程发现算法。 想回答的问题很简单,“如何根据数据写方程”。 想想牛顿的处境,如何根据各种不同物体下落的数据,写出万有引力的数学公式的。这篇文章就是来做这件事的。当然,这篇论文并没有…

数据结构--图。

在前面,我们学习了线性表和树,而接下来我们要学习的图相较于他们就更加复杂。 目录 一.图的有关概念 一.图的有关概念 1.定义 图(graph)G由两个集合V和E组成,记为G(VE)。V是顶点的有穷非空集合;E是边的集合,边是V中顶点的无序对…

xml怎么用【C#,XML】

作用&#xff1a; 用来保存class对象的全部属性。 语法&#xff1a; < > 必须成对出现 <!--这个是注释--> <Student> </Student> 必须成对出现&#xff0c;Student也叫元素标签 <Name&g…

【Linux】传输文件,补充:VMware中Linux系统无法连接网络的解决方法

Linux系统可以和其他系统之间进行传输文件&#xff0c;只要通过ssh连接成功以后&#xff0c;就能进行文件传输。 Linux系统也可以通过URL规则和网页之间进行传输文件&#xff08;即上传/下载&#xff09;。 1、Linux系统之间传输文件&#xff1a;scp centos7自带ssh服务&…

向上转型和向下转型

转型 概念&#xff1a;Java数据类型转换是将一种数据类型的值转换为另一种数据类型的值。在Java中&#xff0c;数据类型转换可以分为两种&#xff1a;向上转型和向下转型 向上转型 ​ 是把子类对象当作父类对象来使用的过程(自动转型)。在向上转型中&#xff0c;我们创建一个…

FPGA+炬力ARM实现VR视频播放器方案

FPGA炬力ARM方案&#xff0c;单个视频源信号&#xff0c;同时驱动两个LCD屏显示&#xff0c;实现3D 沉浸式播放 客户应用&#xff1a;VR视频播放器 主要功能&#xff1a; 1.支持多种格式视频文件播放 2.支持2D/3D 效果实时切换播放 3.支持TF卡/U盘文件播放 4.支持定制化配置…

36.Docker-Dockerfile自定义镜像

镜像结构 镜像是将应用程序及其需要的系统函数库、环境、配置、依赖打包而成。 镜像是分层机构&#xff0c;每一层都是一个layer BaseImage层&#xff1a;包含基本的系统函数库、环境变量、文件系统 EntryPoint:入口&#xff0c;是镜像中应用启动的命令 其他&#xff1a;在…

win32操作windows应用(未完成)

win32 脚本制作 一 、获取窗口句柄 首先获取句柄&#xff0c;其次扫描组件&#xff0c;然后对按钮和文本进行操作 安装依赖 pip install pywin32 -i https://pypi.doubanio.com/simple扫描全部的句柄 import win32gui# GetDesktopWindow 获得代表整个屏幕的一个窗口&#…