[原创]在Centos7.2上源码安装PHP、Nginx、Zentao禅道
版本
- 操作系统:CentOS Linux release 7.2.1511 (Core)
- PHP:5.6.33
- Nginx:1.12.2
- MySQL:5.6.38(192.168.1.103的Windows)
- Zentao禅道:9.7.stable
安装路径
- 源码路径:/usr/local/src
- PHP:/usr/local/php
- Nginx:/usr/local/nginx
- Zentao禅道:/opt/zentao
安装PHP
- 安装php依赖
yum install gcc libxml2-devel openssl-devel curl-devel -y
- 上传php并解压,然后进入到php目录/usr/local/src/php-5.6.33
cd /usr/local/src
rz
tar -xzf php-5.6.33.tar.gz
cd php-5.6.33
- 源码安装三步走
./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc --enable-fpm --with-fpm-user=nobody --with-fpm-group=nobody --enable-mbstring --with-mysql=mysqlnd --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --with-curl --with-zlib --with-openssl
看到提示“Thank you for using PHP.”,就可以进行编译安装了。

编译安装时间比较久,可以喝杯咖啡慢慢等。
make

make install

4. 配置php
复制配置文件及执行文件
ln -s /usr/local/php/bin/php /usr/bin/php
cp /usr/local/src/php-5.6.33/php.ini-production /usr/local/php/etc/php.ini
ln -s /usr/local/php/etc/php.ini /etc/php.ini
cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf
cp /usr/local/src/php-5.6.33/sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
增加可执行权限
chmod +x /etc/init.d/php-fpm
修改配置文件php.ini
date.timezone = PRC
session.save_path="/var/lib/php/session"
记得要手动创建下这个目录
mkdir -p /var/lib/php/session
- 启动php-fpm
service php-fpm start
安装Nginx
- 安装依赖
yum install -y gcc gcc-c++ pcre pcre-devel zlib zlib-devel openssl openssl-devel
- 上传nginx并解压,然后进入到nginx目录/usr/local/src/
cd /usr/local/src
rz
tar -xzf nginx-1.12.2.tar.gz
cd nginx-1.12.2
- 源码安装三步走
./configure --prefix=/usr/local/nginx --with-http_ssl_module --with-http_gzip_static_module --pid-path=/usr/local/nginx/conf/nginx.pid --with-pcre

make && make install

4. 修改nginx.conf
cd /usr/local/nginx/conf/
vi nginx.conf
以下是nginx.conf的修改内容
worker_processes 4;
pid conf/nginx.pid;
location / {
root /opt/zentao/www;
index index.php index.html index.htm;
}
location ~ \.php$ {
root /opt/zentao/www; fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
- 启动nginx并在防火墙上开放80端口
# 启动nginx
/usr/local/nginx/sbin/nginx
# 开放80端口
firewall-cmd --zone=public --add-port=80/tcp --permanent
firewall-cmd --reload
检查Php和Nginx的安装和配置
- 创建test.php
mkdir -p /opt/zentao/www
cd /opt/zentao/www
vi test.php
test.php的内容
<?php
phpinfo()
?>
- 访问http://192.168.1.111/test.php

安装禅道
- 上传禅道源码
cd /usr/local/src/
rz
unzip ZenTaoPMS.9.7.stable.zip
cp -R zentaopms/* /opt/zentao/
- 访问http://192.168.1.111/index.php,进行禅道到安装。
- 根据安装向导,修改以下三个文件夹到访问权限
chmod o=rwx -R /opt/zentao/tmp/
chmod o=rwx -R /opt/zentao/www/data
chmod o=rwx -R /var/lib/php/session

- 如果最后一步提示,ERROR: 您访问的域名 192.168.1.111 没有对应的公司,则需要修改session.save_path的拥有者。执行以下命令,然后删除my.php,重新安装即可。
chown -R nobody:nobody /var/lib/php
service php-fpm restart
/usr/local/nginx/sbin/nginx -s reload

5. 最后一步,成功撒花~~~

6. 安装成功,就可以通过禅道对项目进行管理了。


[原创]在Centos7.2上源码安装PHP、Nginx、Zentao禅道的更多相关文章
- 在ConoHa上Centos7环境下源码安装部署LNMP
本文记录了从源码,在Centos 7上手动部署LNMP环境的过程,为了方便以后对nginx和mariadb进行升级,这里采用yum的方式进行安装. 1.建立运行网站和数据库的用户和组 groupadd ...
- 完美原创:centos7.1 从源码升级安装Python3.5.2
(原创)完美原创:centos7.1 从源码升级安装Python3.5.2 下载Python3.5.2源码:https://www.python.org/downloads/release/pytho ...
- Centos6.6上源码安装Nodejs V4版本
本来就是想在vps上装一个Ghost博客,这个博客依赖的是Nodejs,然后推荐的是V4版本.然后我就对着官网的步骤安装,发现根本没有Centos6 i386的资源了(64位的还是有的), 我只能在那 ...
- nginx在Centos7.5下源码安装和配置
安装nginx 安装nginx依赖包 yum install -y pcre-devel zlib-devel openssl-devel wget gcc tree vim 进入目录/root/se ...
- centos上源码安装clang 3.8
之前想在centos系统上安装clang 3.6版本,由于yum上版本太低,想通过源码编译安装.按照网上说的源码安装步骤,下好llvm.clang.clang-tools-extra和compiler ...
- 在Ubuntu Server上源码安装OpenERP 8.0,并配置wsgi和nginx运行环境
原文: How to install OpenERP 8.0 Alpha on a fresh Debian / Ubuntu server. OpenERP的安装,可以有多种方式,通过添加源,到 h ...
- 源码安装python +NGINX 的坎坷路 +uwsgi安装 部署django 的CRM项目
一.Nginx安装(基于ubuntu17.10 版本) 首先我们是基于源码安装,主要有如下步骤 1.安装依赖包 1.安装gcc g++的依赖库 sudo apt-get install build-e ...
- 国产化设备鲲鹏CentOS7上源码安装Python3.7
具体编译过成与正常的Python源代码在x86平台上的过程无异,此篇随笔仅当用作复制黏贴的备忘录.不得不说在一个老旧系统上安装一个老旧的Python版本,从头编译一个Python还是一个较为稳健的选择 ...
- centos7上源码安装mysql5.7.11
由于初学,安装这玩意搞了三天,其间各种报错难以解决,网上各种解答误导.最好的办法还是使用官方的英文文档,建议初学者一定要使用官方的文档,特别是下面两个页面作为初学者一定要细看: Installing ...
随机推荐
- hdu 1233 还是畅通project(kruskal求最小生成树)
还是畅通project Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Tota ...
- 基于 Asp.Net Core MVC 的 Angular4 SSR 英雄指南
为啥有这篇文章 在之前,类似 Angular.React.Vue 之类的前端框架的一个痛点就是无法在服务端提前把网页内容写入到网页中再发回浏览器,这给网站的 SEO 增加了不少困难,因为爬虫爬到的页面 ...
- Mesos初步尝试
记得几年前,用.net做分布式批处理的时候环境搭建很麻烦,虽然参数的分片算法.配置都搞定了,但是.net虚拟机的环境建立是个头疼的事: 节点要自己手工建 环境变量没法从前往后传递 批处理程序改动后的分 ...
- Highway LSTM 学习笔记
Highway LSTM 学习笔记 zoerywzhou@gmail.com http://www.cnblogs.com/swje/ 作者:Zhouwan 2016-4-5 声明 1)该Dee ...
- iKcamp团队制作|基于Koa2搭建Node.js实战项目教学(含视频)☞ 环境准备
安装搭建项目的开发环境 视频地址:https://www.cctalk.com/v/15114357764004 文章 Koa 起手 - 环境准备 由于 koa2 已经开始使用 async/await ...
- The Movie db (TMDB)的API申请
在共享API TMDB中申请时,一只报错Application summary please elaborate on how you plan to use our API,我是用汉字描述的,开始以 ...
- 在IntelliJ IDEA里创建简单的基于Maven的SpringMVC项目
后来发现了一种更加方便的创建方式,即第一步不选择Create from archetype,创建完毕后打开Project Structure-Modules,然后添加Web,但是注意添加的Web里面的 ...
- K:枚举的线程安全性及其序列化问题
枚举是如何保证线程安全的且其在序列化和反序列化的操作中是单例的? 要想看源码,首先得有一个类吧,那么枚举类型到底是什么类呢?是enum吗?答案很明显不是,enum就和class一样,只是一个关 ...
- Java Serializable接口(序列化)理解及自定义序列化
1 Serializable接口 (1)简单地说,就是可以将一个对象(标志对象的类型)及其状态转换为字节码,保存起来(可以保存在数据库,内存,文件等),然后可以在适当的时候再将其状态恢复(也就是反 ...
- SSH KEY 批量分发
代码 #!/bin/sh . /etc/init.d/functions ];then echo "sh $0 arg0" exit fi for ip in 172.23.216 ...