Tag Archives: 试用

在openshift顺利上搭建media wiki,并成功绑定域名

开通博客之后,一直有个想法搭建一个wiki平台进行知识管理,这些大量的文章写到wordpress还是不太合适,毕竟wiki的分类、查找和链接还是非常方便的;闲话少说,下面记录一下过程。

1.关于openshift的介绍

1.1 来自维基百科:

OpenShift is a cloud computing platform as a service product from Red Hat. The software that runs the service is open-sourced under the name “OpenShift Origin”, and is available on GitHub. Developers can use Git to deploy web applications in different languages on the platform. Uniquely, OpenShift also supports binary programs that are web applications, so long as they can run on RHEL Linux. This allows the use of arbitrary languages and frameworks. OpenShift takes care of maintaining the services underlying the application and scaling the application as needed.

1.2 来自百度百科

红帽OpenShift通过为开发人员提供在语言、框架和云上的更多的选择,使开发人员可以构建、测试、运行和管理他们的应用,从而重新定义了PaaS市场。以红帽全面的JBoss专业知识为基础,OpenShift凭借创新的特性(包括CDI)领导PaaS市场,并支持Java EE 6,从而将PaaS的能力扩展到更丰富和更苛刻的应用。建立在红帽开源领导地位基础上的OpenShift旨在终结PaaS的厂商锁定,使用户可以选择自己应用运行在哪个云提供商的云中。OpenShift将作为在线服务来提供。

2.关于media wiki

看了minix3的wiki站点之后,对python写的MoinMoin很有好感,刚开始还一直在为MediaWiki,MoinMoin,和dokuwiki的选择而头疼,经过一番搜索,觉得media wiki对中文的支持是最好的,而且支持php的主机也多,以后迁移什么的可能会方便一些,果断使用之。

2.1 来自维基百科的介绍

MediaWiki is a free web-based wiki software application. Developed by the Wikimedia Foundation and others, it is used to run all of the Foundation’s projects, including Wikipedia, Wiktionary and Wikinews. Numerous other wikis around the world also use it to power their websites. It is structured functionally.

2.2 来自百度百科

MediaWiki全球最著名的开源wiki程序,运行于PHP+MySQL环境。MediaWiki从2002年2月25日被作为维基百科全书的系统软件,并有大量其他应用实例。目前MediaWiki的开发得到维基媒体基金会的支持。 MediaWiki是建立wiki网站的首选后台程序,目前国内的灰狐维客等站点都采用这套系统。 MediaWiki一直保值着持续更新,当前最新版本为1.5.8(2006-3-26)和1.6.6(2006-5-23)稳定版本。MediaWiki的原作者为德国的Magnus Manske。

3.在openshift上申请账号,猛击这里

下载安装openshift的开发客户端 https://openshift.redhat.com/community/get-started

4.安装media wiki

这里假设你使用的平台是unix或者linux,用CLI进行操作,windows平台用git bash,请看参考文献。

4.1 建立一个wiki的php应用,并绑定mysql到这个应用上

app create -a wiki -t php-5.3
rhc app cartridge add -a wiki -c mysql-5.1

当你绑定mysql到你的wiki应用之后,openshift会分配给你mysql的主机名,用户名和密码,如下图,请保管好。 注意: “mysql://ip:port”,后面那个ip地址,请记住它,后面配置mysql数据库的时候会用到,它是数据库的主机名称,而不是localhost。

4.2 下载wiki程序并解压到目录wiki/

cd wiki/php
wget http://download.wikimedia.org/mediawiki/1.19/mediawiki-1.19.2.tar.gz
tar zxvf mediawiki-1.19.2.tar.gz
cd mediawiki-1.19.2
cp * -R  ..
cd ..
rm -rf mediawiki-1.19.2

4.3 用git提交到openshift,并发布应用

git commit -A
git commit -a -m "my first wiki"
git push

4.4 配置你的wiki,界面语言,数据库,还有一些其他信息

具体请看下面各图

4.4.1 访问你的wiki应用

比如说:http://wiki-verynix.rhcloud.com; 开始进行wiki的相关参数设置,如下图: http://pic.yupoo.com/zhongyijun/CeKPcjSF/bFjQ8.png

4.4.2 选择语言

http://pic.yupoo.com/zhongyijun/CeKPcjSF/bFjQ8.png

4.4.3 填写数据库信息

这一步容易出错:特别是主机名字,不是localhost,数据库主机填写刚才绑定mysql到php应用的时候分到的ip地址。

4.4.4 数据库配置

默认就行

4.4.5 其他信息

填上就行 http://pic.yupoo.com/zhongyijun/CeKPcQWy/lf0NR.png

4.4.6 下载配置文件,然后git上传

配置完成之后,会提示你下载LocalSettings.php文件,这是刚才所有配置步骤生成的文件,请下载到你的本地应用目录里面,例如wiki/php,然后用git上传到openshift:

git add LocalSettings.php
git commit -a -m "settings coinfig file"
git push

5.绑定域名

5.1 用openshift的命令行工具执行以下命令:

rhc app add-alias -a wiki --alias wiki.verynix.com

5.2 添加CNAME记录

到你的DNS解析服务器那里添加一条CNAME记录(DNS记录科普知识 http://www.lihongye.net/post/dns.html),我用的是dnspod,如下图所示: http://pic.yupoo.com/zhongyijun/CfDaqvEW/pzzyD.png

5.3 修改wgServer变量

重要的一步,修改根目录下的LocalSettings.php的wgServer变量,要不然每当你访问你已经绑定的域名:wiki.verynix.com,网站会重定向回原来openshift给你的域名:wiki-verynix.rhcloud.com,相当于没有绑定。

$wgServer = "http://wiki.verynix.com";

然后git commit,git push.至此,一个media wiki应用就搭建成功了: 非常尼克斯的wiki站点;欢迎围观。