Project Perfect让Swift在服务器端跑起来-Hi Linux(二)
编者语:就这样就过完年了,话说大家开始回到各自的工作单位上,感觉还不错吧。开篇写了一个简单的入门,今天想说说怎么让Perfect项目在Linux上运行。
Swift开源后,苹果让Swift不仅在OSX/iOS上跑,更让Swift在Linux/Windows上跑。作为服务端的Perfect框架+RemObject Silver,让Swift成为了一个全栈语言。Perfect由于是服务端的,让Perfect在Linux上跑是必然的事情。 首先在Linux上安装Swift (我这里的环境是Parallels + Ubuntu 14.04)
1. 下载Swift包 ,在终端输入(你必须匹配好和你Linux版本相对应的Swift环境) wget https://swift.org/builds/development/ubuntu1404/swift-DEVELOPMENT-SNAPSHOT-2016-02-08-a/swift-DEVELOPMENT-SNAPSHOT-2016-02-08-a-ubuntu14.04.tar.gz
2. 解压sudo tar xzf swift-DEVELOPMENT-SNAPSHOT-2016-02-08-a-ubuntu14.04.tar.gz 3. 安装RPM包,依照顺序运行以下命令 sudo apt-get update sudo apt-get upgrade sudo apt-get -y install clang libicu-dev sudo apt-get clean 4. 为Swift 设置环境变量 gedit .profile 在最后一行输入你Swift所在路径内的/usr/bin,如图
5. 保存后,退出终端重新打开,输入swift --version可以看到对应的版本号
当然你可以输入swift进行测试,也可以创建一个swift文件进行编译
Swift环境搭建好后,我们开始搭建Perfect on Linux。从第一篇文章中我们可以了解到Perfect由PerfectLib和PerfectServer组成。所以必须编译好对应的.o。 1. RPM 环境设置sudo apt-get -y install libssl-dev libevent-dev libsqlite3-dev make 2. 下载Perfect sudo git clone https://github.com/PerfectlySoft/Perfect.git 3. 编译PerfectLib cd Perfect/PerfectLib sudo make clean sudo make 这里有个坑,由于Perfect还在变化,如果按照上面编译会有问题(当然版本更新后,可能会有变化)
现在的解决办法是在Perfect跟目录下执行sudo git checkout 0ef42b3,再进入PerfectLib重新执行make即可。 接下来继续执行 sudo make install
ll /usr/local/lib/*Perfect*
4.编译PerfectServer cd /Perfect/PerfectServer sudo make 这里要说说PerfectServer有两种接入方式,一种是直接使用PerfectHttpServer,另一种是用FastCGI整合Apache2等中间件,我这里先用PerfectHttpServer,接下来对PerfectHttpServer方式编译 sudo ln -sf "$(pwd)/perfectserverhttp" /usr/local/bin/
5. 创建perfectServerHttp启动文件 在Perfect目录下创建www/var文件夹,并创建perfectServerHttp.sh sudo vi perfectServerHttp.sh [plain]view plaincopy print?
sudo chmod +x perfectServerHttp.sh 之后尝试运行下,执行下面语句 sudo ./perfectServerHttp.sh start 在浏览器中打开即可,当然现在只有运行环境没有任何页面
你还可以通过perfectServerHttp.sh重启和停止Perfect服务 sudo ./perfectServerHttp.sh stop sudo ./perfectServerHttp.sh restart 6. 我们尝试部署Example的URL Routing看看 先编译Examples cd /Perfect/Examples sudo make 回到/var/www cd /Perfect/var/www 创建PerfectLibraries,这个名字是不能变的 sudo mkdir PerfectLibraries 把Examples URL Routing编译好的o文件拷贝到该文件夹中 sudo ln -s '/home/parallels/sample/perfect/Perfect/Examples/URL Routing/URLRouting.so' 之后重新执行 sudo ./perfectServerHttp.sh start 如无意外,你就可以看到部署结果了,如下图
在浏览器输入URL Routing的设定即可:
Perfect run in Linux 是很棒的事情吧。爽!!今天说到这里,有什么问题请留言,晚安-_-!!!! (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |