MacOS使用源码包安装 分享链接

最后编辑:先知 于 2022-01-11 15:21:06
摘要:本文介绍如何在 MacOS 下面使用禅道源码包搭建禅道专业版的运行环境。

目前在Mac OS系统下可以通过源码包进行安装,并需要自己手动配置 Apache+Mysql+PHP安装环境。

一、禅道运行环境说明

禅道运行环境推荐使用Apache + PHP(7.0/7.1/7.2版本) + MySQL(5.5/5.6版本)/mariadb组合,Nginx其次。

禅道运行需要pdo, pdo_mysql, json, filter, openssl, mbstring, zlib, curl, gd, iconv这几个模块,请确保PHP环境中都有加载。

在Mac OS系统下推荐使用 Apache+Mysql+PHP,因为OS系统自带Apache与PHP环境,方便配置。

二、配置环境

1、配置Apache服务


  1. MAC OS环境已内置了Apache服务,只需要启动即可,需输入帐号密码。

  2. Apache 服务器命令

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


  3. 浏览器访问 localhost 或者127.0.0.1,"It works!"表示服务已启动,如您不需要修改web资源路径以及端口号,可跳转到PHP环境配置部分。

  4. 默认web路径与端口号
    Apache默认web资源路径为:/Library/WebServer/Documents/
    Apache默认端口号为 80


  5. 如果不修改Apache默认配置,请直接跳转到配置php环境。
    我们不建议您修改Apache的默认配置,原因如下:

    1. 修改其配置文件有一定的危险性。

    2. 自定义web路径会涉及文件权限问题,将会导致项目部署启动异常,增加问题解决难度。
    3. 后续终端命令,默认为Apache默认访问路径为前提,方便您直接复制执行,如果变更过请将对应的路径替换。

  6. 修改Apache默认配置,如您因端口号冲突或者其他原因,需要修改web访问路径与默认端口号,可参考下文。
    1. 备份Apache的配置文件

    sudo cp httpd.conf httpd.conf.temp2. 修改web访问路径,打开httpd.conf配置文件,查找"DocumentRoot",修改此部分路径,路径中不能出现中文与空格,路径为真实路径,修改后需重启Apache服务。

    3. 端口号修改,搜索 "Listen 80" ,将默认80端口修改为其他端口(注意不要与其他服务端口号冲突),修改后需重启Apache服务。

    5. 测试,可在自定义的web路径下,建 index.html 文件,使用 localhost:自定义端口号/index.html。

    6. 访问正常,则自定义配置结束。

2、配置PHP环境

  1. Mac OS系统已内置了 PHP环境,注意内置的PHP版本号是否与禅道所需版本号匹配。
    禅道适用PHP运行环境(7.0/7.1/7.2版本) 。

    php -v

  2. 整合Apache与PHP,打开Apache配置文件 httpd.conf,搜索“php”找到# LoadModule php7_module libexec/apache2/libphp7.so 去掉注释符号#。

    sudo vim /etc/apache2/httpd.conf # 打开httpd.conf


  3. 配置完成后,需要重启Apache服务。

3、配置mysql 服务

禅道源码包所适用的 Mysql 版本为5.5 或5.6,你可以通过官网或者第三方下载安装包,也可以通过 Homebrew 包管理器安装 Mysql服务。

目前官网不再提供支持Mac OS的5.6版本安装包,本教程推荐通过 Homebrew 命令来下载与安装Mysql 服务。

  1. 首先安装 Homebrew 包管理器工具,在终端中执行如下命令,其他资料参考官网: https://brew.sh/index_zh-cn 

    /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"


    安装过程需耐心等待,安装完成后执行brew -v 查看版本,测试是否安装成功。

     

  2. Homebrew安装后,执行如下命令安装 Mysql5.6,执行过程较慢,需耐心等待。

    brew install mysql@5.6

    下载完成后,依次执行如下命令,添加系统环境变量。

    echo 'export PATH="/usr/local/opt/mysql@5.6/bin:$PATH"' >> ~/.bash_profile

    加载环境变量。

    source ~/.bash_profile

    启动mysql 服务。

    brew services start mysql@5.6
  3. 启动服务后,默认是匿名登录,现在初始化 root 账号。
    输入mysql_secure_installation 命令,来初始化 root 账号信息。

    Enter current password for root (enter for none) # 第一次登陆root账号密码为空,直接回车 Set root password? # y New password: # 密码 Re-enter new password: # 再输一遍密码 Remove anonymous users? 是否删除匿名用户 ? y Disallow root login remotely? 是否允许root账号远程登录? y Remove test database and access to it? 删除test测试库,对test库的访问权限? n Reload privilege tables now? 刷新授权表使修改生效?y
  1. 配置完成就可以使用 root 账号与密码登陆了。

  2. 如您需要操作Mysql服务,可使用 brew 命令来管理(需要退出mysql执行)。

    brew services start mysql@5.6 # 启动 mysql 服务 brew services restart mysql@5.6 # 重启 mysql 服务 brew services stop mysql@5.6 # 停止 mysql 服务

三、安装部署禅道项目

源码包下载地址: https://www.zentao.net/download.html


  1. 解压禅道源码包

  2. 将解压后的文件复制到Apache访问目录下(默认路径为 /Library/WebServer/Documents/)

    sudo cp -r ~/Downloads/zentaopms/* /Library/WebServer/Documents/

3.安装方式,浏览器访问,本机ip:端口号/www/index.php


四、常见问题及解决方案

1.如果你安装的禅道版本为专业版或者企业版,需要 ionCube Loader Wizard  扩展。
你可以参考 https://www.zentao.net/book/zentaopmshelp/300.html 并结合如下信息来配置成功。
安装过程注意:拷贝文件时提示operation not permitted 你可能需要关闭mac 系统的rootless机制,该机制限制了部分系统文件夹下文件的操作权限。

2.rootless机制与如何关闭
一般情况下我们在使用mac系统过程中下载一些文件,这些文件都会默认是只读状态,可通过权限设置命令 sudo chmod -R 777 目录,但是我们在对 usr/bin 等系统目录下的文件进行操作的时候往往会出现这样的错误  operation not permitted ,这是因为一些mac用户在升级系统之后,电脑启用了SIP(System Integrity Protection),增加了rootless机制,导致即使在root权限下依然无法修改文件,在必要时候为了能够修改下面的文件,应当关闭该保护机制
1. 重启过程中按住 command+R 进入保护模式,打开terminal终端,输入  csrutil disable 。
2. 再次重启完成后,即可对 usr/bin 目录下文件进行修改。

3. 如果要恢复保护机制,重新进入保护模式,输入 csrutil enable 即可.


3. 安装中出现访问禅道下文件权限问题,按提示执行命令。

sudo chmod -R 777 /Library/WebServer/Documents # 给禅道项目所属文件权限


4.安装中出现  session.save_path 问题:

修改PHP配置文件,该配置文件默认位于  /etc/php.ini.default
备份 php.ini.default 文件后将  php.ini.default 重命名为 php.ini ,并在文件内搜索  session.save_path  = "/tmp" ,修改此  "/tmp" 值, 建议修改路径为  /Users/系统登录用户名 ,如下图所示
修改完成后,将此项的注释放开,即  删除 ";" 符号,执行如下命令,给予文件权限。

sudo chmod -R 777 /Users/系统登录用户名


Renee 1094