首页 > 代码库 > 编辑器服务器搭建

编辑器服务器搭建

操作系统:CentOS 6.x 64位

编辑器框架:php5.5 + mongodb-org-3.2 + lighttpd-1.4.39
1. 安装mongodb-org-3.2

(1)添加yum的mongodb仓库

sudo vim /etc/yum.repos.d/mongodb-org-3.2.repo

添加以下内容:

[mongodb-org-3.2]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/3.2/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-3.2.asc

(2)使用yum进行安装
sudo yum install -y mongodb-org

注意:如果SecureCRT的mongo壳下的退格键有问题,那么修改SecureCRT的选项 –> 会话选项 –> 终端 –> 仿真 –> 终端,将其改为linux

注意:启动mongodb时可能出现如下警告提示:

2016-06-16T22:15:01.057+0800 I CONTROL  [initandlisten] ** WARNING: /sys/kernel/mm/transparent_hugepage/enabled is ‘always‘.
2016-06-16T22:15:01.057+0800 I CONTROL  [initandlisten] **        We suggest setting it to ‘never‘
2016-06-16T22:15:01.057+0800 I CONTROL  [initandlisten]
2016-06-16T22:15:01.057+0800 I CONTROL  [initandlisten] ** WARNING: /sys/kernel/mm/transparent_hugepage/defrag is ‘always‘.
2016-06-16T22:15:01.057+0800 I CONTROL  [initandlisten] **        We suggest setting it to ‘never‘
2016-06-16T22:15:01.057+0800 I CONTROL  [initandlisten]
2016-06-16T22:15:01.057+0800 I CONTROL  [initandlisten] ** WARNING: soft rlimits too low. rlimits set to 1024 processes, 64000 files. Number of processes should be at least 32000 : 0.5 times number of files.

解决方法为,使用root用户执行下面命令后重启mongodb:

echo "never" > /sys/kernel/mm/transparent_hugepage/enabled
echo "never" > /sys/kernel/mm/transparent_hugepage/defrag
echo "mongod soft nofile 64000
mongod hard nofile 64000
mongod soft nproc 32000
mongod hard nproc 32000" >> /etc/security/limits.conf

2. 升级到php5.5

(1)卸载php5.4-

sudo yum remove php php-cli php-common php-devel php-pear php-process php-xml

(2)安装webtatic-release

sudo rpm -Uvh https://mirror.webtatic.com/yum/el6/latest.rpm

(3)使用yum进行安装

sudo yum install -y php55w php55w-devel php55w-pear
3. 安装mongodb的php驱动mongodb

确保已安装依赖软件:gcc、openssl-devel

sudo pecl install mongodb

添加"extension=mongodb.so"到/etc/php.ini
4. 创建项目时添加mongodb的php驱动的高级接口PHPLIB,项目已存在时跳过此步

(1)安装composer

wget https://getcomposer.org/installer

php installer #如果执行不成功,可多执行几遍试试

mv composer.phar ~/bin/composer

(2)在项目根目录加载PHPLIB

composer require "mongodb/mongodb=^1.0.0"
5. 安装lighttpd

(1)确保已安装依赖软件:bzip2-devel

(2)下载并解压lighttpd源码包

wget http://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.39.tar.gz

tar -zxvf lighttpd-1.4.39.tar.gz

cd lighttpd-1.4.39

(3)配置、构建和安装

./configure

make

sudo make install

(4)初始化脚本

sed -e ‘s/FOO/lighttpd/g‘ doc/initscripts/rc.lighttpd.redhat > /etc/init.d/lighttpd

chmod a+rx /etc/init.d/lighttpd

cp -p doc/initscripts/sysconfig.lighttpd /etc/sysconfig/lighttpd

mkdir -p /etc/lighttpd

cp -R doc/config/conf.d/ doc/config/*.conf doc/config/vhosts.d/ /etc/lighttpd/

chkconfig lighttpd on

注意:/etc/init.d/lighttpd中的lighttpd命令所在位置可能不正确,需要修改

6.添加lighttpd用户

sudo groupadd lighttpd

sudo useradd -g lighttpd -M -s /sbin/nologin lighttpd

7.配置lighttpd

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

(1)url配置

url.rewrite += (
    "^/tpleditor/[^/]*$" => "/tpleditor/main.php",
    "^/tpleditor/([^/]+)/(.*)$" => "/tpleditor/app/$1/$2",
)
#只可访问main.php和app目录中的文件

(2)fastcgi配置

fastcgi.server = ( ".php" =>    # 文件扩展。Lighttpd内部提供FastCGI加载均衡
                   ( "php-local" =>     # 可选。用于mod_status统计,指示处理该文件扩展的后台处理器
                     (
                       "socket" => "/tmp/php-fastcgi-1.socket",
                       #"host" => "127.0.0.1",   # 指定socket或者host+port
                       #"port" => 9999,
                       "bin-path" => "/usr/bin/php-cgi",    # 如果本地FastCGI没有运行,该路径本地FastCGI将被启动
                     )
                   ),
                )

 

编辑器服务器搭建