最近因为项目需要研究了一下MochiWeb,在linux下安装MochiWeb碰到了一些问题,记录如下:
1、make源代码不成功
我下载的是MochiWeb上最新版本,make报错,mochiweb.app的错误,调了半天没找到问题,svn看MochiWeb代码log,
设置svn版本为157重新下载make,搞定。
2、./start-dev.sh无法执行问题
按照
实战MochiWeb实战MochiWeb方法安装完后执行./start-dev.sh,返回“没有权限”,解决chmod +x start-dev.sh,将start-dev.sh属性设置为可执行
执行./start-dev.sh,返回“没有找到文件或者目录”,原因MochiWeb代码我是从win下svn下载然后上传linux的,new_mochiwe.erl文件格式在win下被转换了,具体原因如下:
如果我们是在windows上编辑的shell文件,上传到linux上,执行的时候可能会出现一些莫名
其妙的问题,其原因是在windows上编辑的文件每一行的结尾会有一个回车换行符(十六进制代码
为0d0a),而在linux上的文件换行符为0a,0d会莫名其妙的变成一个^M非可见字符。而这个字符
会被shell文件读到,影响命令的正常执行。
所以,当我们的linux上的shell文件出现奇怪的问题时我们不妨使用命令cat -A filename来
看一下文件中行结尾是不是有^M这个东西,如果有需要把它处理掉。处理办法有如下两个:
1、使用命令cat filename | col > newfile 注意这个命令不支持汉字,如果filename文件
中有汉字的话转换将出现问题。即使汉字是出现在注释中也不行。
2、使用dos2unix filename 命令转换。
执行dos2unix start-dev.sh,搞定问题。
3、start-dev.sh服务没有启动
执行start-dev.sh后,访问http://localhost:8000,无法访问,重新编译安装openssl,搞定
终于看到了期待已久的“MochiWeb running. ”,细节很重要。
相关推荐
通过阅读和实践提供的压缩包文件中的例子,你可以进一步理解Mochiweb的工作原理,以及如何在实际项目中集成和使用它。记得,实践是检验知识的最好方式,动手尝试创建自己的Web服务器,你会发现Mochiweb的强大和灵活...
这个 "erlang mochiweb-test demo" 压缩包很可能是为了展示如何使用 Mochiweb 在 Erlang 中构建一个简单的 Web 应用程序或测试环境。 Mochiweb 的核心组件包括以下几个部分: 1. **HTTP 服务器**:Mochiweb 提供了...
MochiWeb 的最新版本可在MochiWeb 的邮件列表位于 设置 MochiWeb 环境需要 Erlang OTP,可在使用项目创建一个新的 mochiweb:make app PROJECT=project_name 要使用特定目录中的项目创建新的 mochiweb: make app ...
这个基于Mochiweb的聊天室项目展示了Erlang和Mochiweb在构建实时网络应用上的强大能力。通过学习和分析这个项目,开发者可以深入理解Erlang的并发模型、Mochiweb的工作原理,以及如何利用它们构建高效、可靠的Web...
MochiWeb的邮件列表位于 R12B兼容性:MochiWeb的母版已通过R14A及更高版本进行了测试。 与R12B兼容的分支在单独维护。为方便起见,该存储库的R12B分支有时会在官方存储库中进行镜像。 要使用项目创建新的mochiweb,...
- **热更新**:Erlang支持代码的热更新,可以在不中断服务的情况下更新应用程序,提高了系统的可用性。 - **轻量级**:Mochiweb和Cowboy都设计为轻量级,启动快速,资源占用少,适合部署在资源有限的环境中。 总的...
- 注意事项:安装过程中不要勾选“安装为服务”选项,以免出现错误。 **3. 安装RabbitMQ插件** 为了更好地管理RabbitMQ,还需要安装管理插件: - 切换到`C:\ProgramFiles\RabbitMQServer\rabbitmq_server-3.6.12\...
我已经决定不将工具本身捆绑在源代码树中,但是很容易从[rebar项目站点] [rebar3]中获得它(不要忘了使其可执行)。 Rebar可以获取依赖项,立即编译所有内容,甚至安装: rebar3 compile (注意:以Makefile为例...
- **可扩展性**: 通过热更新功能,可以在不重启服务的情况下更新代码。 - **分布式支持**: 借助Erlang的分布特性,可以轻松地扩展服务至多台机器,提升性能。 - **维护便捷**: OTP框架提供了一套完整的应用程序模型...
在国外,Erlang被广泛应用于Ejabberd即时通讯服务器、RabbitMQ消息队列、CouchDB文档数据库、Mochiweb轻量级Web服务器以及Disco分布式计算框架。 Erlang与传统的操作系统如Unix相比,具有独特的设计哲学。在Unix中...
在 Ubuntu 10.04 下,可以使用以下命令安装 Erlang 和 Git: ``` $ sudo apt-get install erlang $ sudo apt-get install git-core ``` 二、下载和安装 rebar rebar 是一个 Erlang 构建工具,可以方便的编译测试 ...
1. **Websocket协议基础**:Websocket协议定义了一种在单个TCP连接上进行全双工通信的协议,解决了HTTP协议下频繁的请求-响应模式带来的性能问题。它允许服务器主动推送数据到客户端,适合实时性要求高的应用,如...
在此前提下,架构的设计可以分为三个主要部分:服务堆栈、服务拓扑和开源项目应用。 服务堆栈包括了WebAPI、MobileAPI、WebServer、InstantSearch、SystemFeed、SystemNotice、MQserver、CalfServer、OnlineServer...
erlang demo with hot update`可能展示了Erlang如何支持热更新,即在不中断服务的情况下更新应用程序。 - `16. erlang with Web UI`可能是一个独立的Erlang Web应用示例,强调其在构建Web服务时的效率和可靠性。 ...
Erlang 是一种高级编程语言,以其在并发处理、分布式计算和高可靠性方面的出色性能而闻名。在国内外,Erlang 已经被广泛应用于各种场景,如广告平台、社交网络、云计算、网络游戏以及实时通信等领域。 **Erlang 在...
- WebIM服务器使用Erlang的“mochiweb”实现,可以支持大量的并发长连接,从而确保系统的高可用性和扩展性。 - **消息接口设计**: - AJAX POST消息:用户通过POST方式向SNS主服务器发送消息。 - 主服务器处理并...
- `ReqData`:存储请求和响应数据,可在每个函数中读取或修改,并传递到下一个函数。 - `Context`:由应用自行维护的状态信息,框架不处理这一参数。 - **无副作用编程**:由于Erlang的基础实现,Webmachine强制...
简单桥 ... 它目前支持Cowboy,Inet,Mochiweb,Webmachine和Yaws。 SimpleBridge用作两个最受欢迎的Erlang Web框架到Web... 这意味着您可以在Inets,Mochiweb和Webmachine上运行websocket ,而本机都不支持Websockets。
核心功能目的:高性能协议中继端点:WebSocket,MQTT,TCP 代码库:700 LOC(Erlang),500 LOC(JavaScript) 透析仪:REBAR,REBAR3,MAD,MIX 主机:COWBOY,EMQ,MOCHIWEB,RING,TCP,UDP协议扩展模板:DTL,...