当前位置:   article > 正文

mac 13 系统下安装配置 apache php (更新20230511)_mac apache

mac apache

(不推荐) Mac 自带 apache命令

!!!不推荐,系统每次更新都要重新配置。

apache 命令如下:

#开启apache服务 
sudo apachectl  -k start
#停止apache服务 
sudo apachectl stop
#重启服务 
sudo apachectl restart
#查看版本 
httpd -v
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

手动打开apache服务后,在浏览器输入localhost,将看到如下:
在这里插入图片描述
程序的根目录在/Library/WebServer/Documents/ 下,这个It works 就是里面的info.php打印出来的。

配置apache

1. 在自己的用户目录下新建一个Sites文件夹。
  $ mdir dir ~/Sites
  • 1
2. 编辑文件/etc/apache2/users/username.conf。
 $ sudo vim /etc/apache2/users/username.conf
  • 1
#userName=你的用户名

#添加内容
<Directory "/Users/{userName}/Sites/"> 
AllowOverride All Options
Indexes MultiViews FollowSymLinks Require all granted 
</Directory>

#将该文件权限改为644:
$ sudo chmod 644 username.conf
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
3. 编辑文件/etc/apache2/httpd.conf 。
$ sudo vim httpd.conf 
  • 1
#取消以下注释 
#ps: (vim 快速查看 命令模式(输入:)  输入 /”words you need find”)
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

#开启php
LoadModule php7_module libexec/apache2/libphp7.so
```
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
4. 编辑文件/etc/apache2/extra/httpd-userdir.conf。
$ sudo vim httpd-userdir.conf
  • 1
#取消注释
lnclude /private/etc/apache2/users/*.conf
  • 1
  • 2
5. 重启apache。
   $ sudo apachectl restart
  • 1
6. 浏览器输入: loacal/~{userName}/ 就能看到效果了。
ps:~yanzi 是 自己的用户名
 ![在这里插入图片描述](https://img-blog.csdnimg.cn/img_convert/ac2339713036f4cea22a0965b70f3266.png)
 经过以上步骤apache就搞好了。
  • 1
  • 2
  • 3
7. 在用户目录的Sites文件夹下,新建一个index.php。
   <?php
       phpinfo();
   ?>
  • 1
  • 2
  • 3
![alt ](https://img-blog.csdnimg.cn/img_convert/ac2339713036f4cea22a0965b70f3266.png)
  • 1

将用户目录设为默认目录(选)

打开文件

$ subl /etc/apache2/httpd.conf  
  • 1

查找

xxxx 为自己的用户名

DocumentRoot "/Library/WebServer/Documents"    
	修改为 DocumentRoot "/Users/xxxx/Sites"  
	
<Directory "/Library/WebServer/Documents">    
	修改为 <Directory "/Users/xxxx/Sites">
  • 1
  • 2
  • 3
  • 4
  • 5

添加

   <FilesMatch \.php$>
        SetHandler application/x-httpd-php
    </FilesMatch>
  • 1
  • 2
  • 3

添加 index.php

	<IfModule dir_module>
         DirectoryIndex index.html index.php
	</IfModule>
  • 1
  • 2
  • 3

ok!现在输入localhost试试,应该指向你的目录了。


mac 12 PHP 安装

以下来自CSDN博主「qq_21761149」的原创文章,可能出错的地方做下修改
————————————————
版权声明:本文为CSDN博主「qq_21761149」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_21761149/article/details/122012229
————————————————
mac 12 删除了php,导致按照以前的方式无法加载php,表现是无法启动。
问题是由于12的安全限制引起的!!!

1. 安装 php7.4

```
 $ brew link --overwrite php@7.4
```
  • 1
  • 2
  • 3

2. 创建证书

找到 “启动台>其他>左上角菜单>钥匙串访问>证书助理>创建证书颁发机构”
**证书名字区分大小写图为"cxCA"实际应为"cxca"**
  • 1
  • 2

在这里插入图片描述
在·我的证书·找到刚创建的证书,全部信任
在这里插入图片描述

3. 签名libphp7.so

注意下自己的证书文件位置 ~/Library/Keychains/login.keychain-db
```
$ sudo codesign --sign “cxca” --force --keychain ~/Library/Keychains/login.keychain-db /usr/local/opt/php@7.4/lib/httpd/modules/libphp7.so

### 4. 修改文件/etc/apache2/httpd.conf。
  • 1
#PHP 这行添加为
LoadModule php7_module /usr/local/opt/php@7.4/lib/httpd/modules/libphp7.so "cxca"
```
  • 1
  • 2
  • 3

5. 重启apache

$ sudo apachectl restart
  • 1

(推荐) 使用 brew 重新安装 appche

由于 使用签名方法每次升级都要重新设置。
(20230511更新)由于brew的相关依赖更新导致 php7 无法运行现更新为php8
默认使用工具 Sublime Text (用vim 自行替换)

0. 关闭Mac 自带的 appche

sudo launchctl unload -w /System/Library/LaunchDaemons/org.apache.httpd.plist
  • 1

1.安装 brew

度娘自行搜索 方法很多 有墙

2.安装 php appche

brew install php
brew install httpd
  • 1
  • 2

3. 配置 httpd.conf

1.修改端口

安装完毕后默认端口是8080 修改为 80

subl /usr/local/etc/httpd/httpd.conf
查找 Listen 8080 改为80
  • 1
  • 2
2. 添加php支持
添加(删除原有 php_module)
LoadModule php_module /usr/local/opt/php/lib/httpd/modules/libphp.so

xxxx为自己用户名 记得建立目录
DocumentRoot "/Library/WebServer/Documents"    
   修改为 DocumentRoot "/Users/xxxx/Sites"  
   
<Directory "/Library/WebServer/Documents">    
   修改为 <Directory "/Users/xxxx/Sites">
   
添加
  <FilesMatch \.php$>
       SetHandler application/x-httpd-php
   </FilesMatch>

添加 index.php 

   <IfModule dir_module>
        DirectoryIndex index.html index.php
   </IfModule>

其他
DocumentRoot "/Library/WebServer/Documents"    
   修改为 DocumentRoot "/Users/xxxx/Sites"  
   
<Directory "/Library/WebServer/Documents">    
   修改为 <Directory "/Users/xxxx/Sites">

添加
  <FilesMatch \.php$>
       SetHandler application/x-httpd-php
   </FilesMatch>

添加 index.php 

   <IfModule dir_module>
        DirectoryIndex index.html index.php
   </IfModule>
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38

4. 运行 appche

brew services restart httpd
或
brew services start httpd
  • 1
  • 2
  • 3
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/空白诗007/article/detail/753190
推荐阅读
相关标签
  

闽ICP备14008679号