关于MacOS12 Monterey安装虚拟机

如题,升级到最新系统MacOS12 Monterey后,网上很多资料已经不适合用了,因此花费了很长时间进行一一测试。
一、曾经尝试的方法(可能是本人配置问题吧):
  1、Mac自带Apache,但是最新的MacOS12已经不支持内置PHP了,安装PHP修改配置依旧无效
  2、安装brew,通过brew来重新安装httpd Apache服务器,再安装PHP环境,最后修改配置到自己工作目录,全部启动,依旧没有运行成功,有兴趣的同学可以尝试,
 
二、符合本人项目的虚拟机 - XAMPP(尝试过小皮PHPstudy MAc版,配置无效)
  下载对应的PHP版本哦,低PHP版本好操作,网上教程多是低PHP版本,适合新人。之前盲目下载最新版本导致一度配置后无法访问问题。
  因为项目最低PHP版是7.1,因此我找打7.1.30版本MAc下载,虽然界面老了一点,但是没很实用,不需要全开,只需要开启apache服务就可,开启时可以实时看日志,server Events 或 Log
  
       这里面可以找到对应的PHP版本,点击进去,不要点上面绿色下载按钮,看列表中的安装文件installer.dmg,可以看下载量,点击下载,然后一直next安装即可。
 
该低版本的XAMPP会在应用程序中新建一个XAMMP文件夹,里面就是相关的配置文件
  快捷进入方法:
  1、点击访达 -》 应用程序 -》找到文件夹 XAMPP -> etc (建议分栏模式,层级关系)
  2、打开XAMPP软件,第一页Welcome,点击右下方第二按钮 open Application Folder,找到当前同级的etc即可
 
XAMPP第二页面Manage Servers
  选择 Apache Web Server,选择右边Start,只需要开启这即可
 
XAMPP第三页面Server Events 是监控Manager Servers开启关闭状态日志,可以更加日志定位问题
 
修改配置
  可以直接修改etc中http.conf,建议自己先备份一份,也可以修改etc -> extra中的httpd-xampp.conf文件,
  这里说一下,httpd-xampp-conf是对http.conf配置的覆盖,目的是不想用户直接修改http.conf原件,其实没必要,可以直接修改随意。修改的配置的网上很多
  1、修改host
    1.1、打开终端输入: sudo vim /etc/hosts
    1.2、按A,开始移动光标修改、添加,127.0.0.1 xx
    1.3、修改完成后,按一下ESC,然后按住shift + :(冒号),再输入wq(保存退出)
    注:也可以使用第三方插件,如utools、火绒,本人用utools,因为其插件真丰富,自己也会写着玩,utools中搜hosts,安装后在开发环境输入127.0.0.1 xx,最后右键开发环境选择应用此文件即可
 
2、修改虚拟机映射 https-vhosts.conf
  应用程序 -》XAMPP -》etc -》extra -》https-vhosts.conf
  最下面添加自己的项目
<VirtualHost *:80>
  ServerAdmin webmaster@dummy-host2.example.com   DocumentRoot "/Users/myMac/work/test"   ServerName test.com   ErrorLog "logs/test.com-error_log"   CustomLog "logs/test.com-access_log" common
</VirtualHost>

 

3、修改 httpd-conf
  3.1、引入httpd-vhosts.conf
  找到 Virtual hosts,去掉下面一行的 #
# Virtual hosts
Include etc/extra/httpd-vhosts.conf

 

  3.2、修改用户,防止403报错,没有权限
User xiaoming // 这是xiaoming表示是自己的用户名,不能有空格,如果格式不对,请修改自己用户名,可自行百度Mac修改用户名即可
Group daemon

 

  3.3 如果直接修改httpd-conf,请在最后一行中,即 # XAMPP 下面引入的覆盖文件注释掉,前面加#即可
# XAMPP
Include etc/extra/httpd-xampp.conf
# Include /Applications/XAMPP/xamppfiles/apache2/conf/httpd.conf

 

  3.4、修改DcumentRoot,路径和相关配置
# Deny access to the entirety of your server's filesystem. You must
# explicitly permit access to web content directories in other
#  blocks below.
#
    
AllowOverride All    
Require all granted    
Order deny,allow    
Allow from all

 

DocumentRoot "/Users/work/test"
<directory " users="" work="" test">   <="" directory <="" div="">
#    
# Possible values for the Options directive are None, All,    
# or any combination of:   
#   Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews   
#    
# Note that MultiViews must be named *explicitly* --- Options All   
 # doesn't give it to you.    
#    
# The Options directive is both complicated and important.  Please see    
# http://httpd.apache.org/docs/trunk/mod/core.html#options   
# for more information.    
#    
#Options Indexes FollowSymLinks    
# XAMPP    
Options Indexes FollowSymLinks ExecCGI Includes    
#    
# AllowOverride controls what directives may be placed in .htaccess files.    
# It can be All, None, or any combination of the keywords:    
#   Options FileInfo AuthConfig Limit   
#    #AllowOverride None   
# since XAMPP 1.4:    
AllowOverride All   
#   
# Controls who can get stuff from this server.    
#    
Require all granted    
Order deny,allow       
Allow from all

  3.5、配置完这些,在XAMPP第二页面Manage Servers,选中apache web server,点击restart即可,如果有报错,请看第三页面Server Events的日志,哪个地方配置问题

 
 补充:
  关于MacOS12 Monterey的软连接 https://www.cnblogs.com/cp-cookie/p/15770412.html
posted @ 2022-01-06 11:35  浪里小韭菜  阅读(1371)  评论(0编辑  收藏  举报