# linux单机部署(>= V3.5.0)

# 基于商派封装的源进行快速简易的安装

这是一个使用yum源安装shopex OMS的标准化教程,可以大大减轻搭建环境的工作量。

我们希望提供给部署运维人员的不仅仅是一个教程,也是一个思路,而不是一个傻瓜式的部署步骤(ctrl+c加ctrl+v),在实际安装部署过程中,由于操作系统或环境的差异,出现依赖库冲突等问题,可自行调整或咨询官方后进行解决。

# 约定

  1. 操作系统为Centos 6.5 x64 或6系列的以上版本(centos 6.x 或者el6)
  2. 系统基于最小化安装即可

PS : 7.0以上 是不支持的,注意系统必须是64位

# 关闭selinux

#命令行临时关闭 SeLinux
setenforce 0
#修改SeLinux配置,下次启动则默认关闭
修改  /etc/selinux/config  文件
将  SELINUX=enforcing  改为  SELINUX=disabled
1
2
3
4
5

# 初始化yum源

将shopex-lnmp源加入到系统中,在线地址查看有哪些软件 http://mirrors.shopex.cn/shopex/shopex-lnmp/ 可以安装

yum install wget -y
cd /etc/yum.repos.d/
wget http://mirrors.shopex.cn/shopex/shopex-lnmp/shopex-lnmp.repo

1
2
3
4

# 安装epel扩展源

yum install epel-release -y
1

# 安装OMS环境,主要是php apache mysql zend redis以及任务管理器(taskmgr)的运行php(支持线程)

apache+php+mysql51
yum install -y httpd php-pdo php-xml php-pecl-imagick php-soap php php-fpm php-bcmath php-pecl-memcached php-pecl-igbinary php-common php-mysql php-mcrypt php-mbstring php-pecl-memcache php-pecl-redis php-gd php-cli php-xmlrpc php-pecl-mongo php-ZendGuardLoader mysql51 redis 

安装 php-pthreads
yum install php-pthreads -y
1
2
3
4
5

# 配置文件以及相关目录说明

站点根目录 建议/data/httpd/oms.xxx.com(xxx为具体客户的真实域名)

apache: 
配置文件目录 /etc/httpd/conf/httpd.conf

php:
配置文件  /etc/php.ini
php 扩展配置文件目录 /etc/php.d/
zend 配置文件   /etc/php.d/Zend.ini

mysql5.1:
basedir /usr/local/mysql51
datadir /data/mysql/3306
配置文件 /usr/local/mysql51/my.cnf

可以使用 mysqladmin password 'xxxxxx' 设置mysql的root密码

php-pthreads:
basedir /usr/local/php-pthreads

memcache:
配置文件 /etc/sysconfig/memcached

redis :
配置文件 /etc/redis.conf

关于启动命令
apache 
service httpd start
mysql51
service mysql51 start
memcache
service memcached start
redis
service redis start

关于加入开机启动项
chkconfig xxx on
xxx 为服务名
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
39

# php配置

修改 /etc/php.ini
date.timezone = "Asia/Shanghai" //调整时区

修改 /etc/php.d/zend.ini
zend_loader.license_path = '/data/httpd/oms.xxx.com/config/developer.zl' //请根据实际情况进行配置
1
2
3
4
5

# 1) 复制代码到安装目录

/data/httpd/oms.xxx.com/
1

# 2) 对 data,config,public 目录赋 777

chmod -R 777 /data/httpd/oms.xxx.com/data
chmod -R 777 /data/httpd/oms.xxx.com/config
chmod -R 777 /data/httpd/oms.xxx.com/public
1
2
3

# 3) 配置apache

#ServerName www.example.com:80
修改为
ServerName oms.xxx.com:80

DocumentRoot "/var/www/html"
修改为
DocumentRoot "/data/httpd/oms.xxx.com/"

<Directory "/var/www/html">
修改为
<Directory "/data/httpd/oms.xxx.com/">

当然如果apache服务下设置多个站点话,我们也可以设置vhost:

<VirtualHost *:80>
    DocumentRoot "/data/httpd/oms.xxxx.com"
    ServerName oms.xxxx.com
    <Location /script/>
        Order deny,allow
        Deny from all
    </Location>
    <Location /config/>
        Order deny,allow
        Deny from all
    </Location>
    <Directory "/data/httpd/oms.xxxx.com">
        Options FollowSymLinks
        AllowOverride None
        Order allow,deny
        Allow from all
    </Directory>
</VirtualHost>

使用/etc/init.d/httpd configtest进行配置文件检测,出现 Syntax OK 表示检查没有问题,使用 /etc/init.d/httpd start 启动web服务
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

# 4) 开始安装应用

直接访问OMS访问地址,一步步执行下去即可。
1

# 5) taskmgr app 配置(详细说明请查看"任务管理"章节说明)

App/taskmgr/config/config.php
一般默认安装后只要修改以下两个参数
//设置定时任务的请求域名,建议直接走内网127.0.0.1(或内网ip),执行脚本服务器能通过127.0.0.1(或内网ip)访问OMS站点即可,如果设置真实域名还要从本机跳到外网再绕一圈再进来,有点多余。
define('DOMAIN', '127.0.0.1');

//定义内部任务请求的token
define('REQ_TOKEN', 'SzjJ7VF9w2Dy3yt4K9vcV3LEwFc5pX3cXHu');
1
2
3
4
5
6
7

# 6) crontab 部署

部署前,检查下redis队列有没有起来,没有的话执行/etc/init.d/redis start

//任务管理器守护进程
* * * * * /bin/sh /alidata1/httpd/oms.xxx.com/app/taskmgr/check.sh

//历史任务处理日志清理
0 0 * * * /bin/sh /alidata1/httpd/oms.xxx.com/app/taskmgr/cleanlogs.sh
1
2
3
4
5
6
7

完成以上步骤后,OMS系统即可正常访问使用。

最后更新: 8/10/2018, 5:49:47 PM