可以在具有1GB内存的Pi3上托管网站吗?


8

最近阅读此文章:http : //www.makeuseof.com/tag/host-website-raspberry-pi/,其中讨论了在Pi上托管网站的可能性。但是我不确定它是否能够托管我想要的东西。我有一个正在建设中的网站,我一直在想自己宁愿自己托管该网站,也不愿花钱让别人托管给我。这是一个基本的网站,仅用于显示联系信息和我最近的项目(文本和图片)。这是最终目标的示例:http : //brianmaierjr.com/

可以在Pi上托管类似的东西吗?在寻找一台托管该站点的计算机时应牢记哪些限制条件?

编辑:仅是为了获得更多信息,我怀疑一次不会有超过100个并发会话,而且我认为安全性或流量确实不是一个太大的问题。向雇主展示只是一件小事。

EDIT2:为澄清起见,我对此进行了更多研究,几乎可以肯定的是,它将朝着Node.JS的方向发展。我的背景是.NET开发,本月初,我从c#休息了一段时间,转而使用JS。非常感谢大家的帮助。非常感谢所有轶事和客观信息!


是的,您可以在Pi3上托管一个网站,您会为他的功能感到惊讶。:了解更多信息,请树莓阅读本raspberrypi.org/documentation/remote-access/web-server/...
reicros

评论不作进一步讨论;此对话已转移至聊天
加纳玛

大家好 那么您最终是怎么做到的呢?:DI今天得到了一些好评,注意到您从未选择任何答案。请提高答案的社区转化率,然后选择您喜欢的答案。希望一切顺利!
Piotr Kula '18

Answers:


3

100个并发会话实际上是很多:考虑到一个典型的雇主将花费大约5-10分钟来浏览您的网站,您必须每天向成千上万的雇主宣传您的网站,以获取大量流量。

实际上,Raspberry Pi对于这样的站点就足够了。这将比商业托管上的类似站点明显慢(不是因为有Raspberry,而是因为您的站点不会得到CDN的支持),所以您的客户将不得不等待几秒钟才能开始页面装载。但这将是可用的。

粗略地说,您应该期望系统最多消耗100MB的RAM,而Web服务器最多要消耗100MB的RAM。其余的基本上将在磁盘缓存和服务器端脚本之间共享。


我们在这里谈论加载页面之间的速度有多慢?如果不是PI,究竟是什么导致了这种缓慢?是否更依赖于我的Internet连接支持服务器?还是Pi的硬件​​?
J.Doe '16

@ J.Doe当某人加载Youtube时,他们将直接从其提供程序的缓存中或至少从其所在国家/地区的邻近服务器中获取数据。当同一个人将您的网站加载到Pi上托管时,数据将需要在用户,Pi和用于获取Pi域名的DNS服务器之间进行一次全球范围的实际往返。除非您支付溢价,否则所有这些连接都将很慢。很容易会延迟几秒钟。
德米特里·格里戈列耶夫

3

你当然可以!这完全取决于您如何配置Pi。我可以看到ye'old好的LAMP答案已经悄然兴起...我强烈建议您远离Apache传统的完整PHP(CPU和RAM HOGGERS)

这是一个事实:不是你的,你的前端应该必须使用nginx的来代替。它是为嵌入式设备设计的,在Pi上尤其是3上运行得非常好。

后端是一切都取决于你,但 ň 中号 Ÿ ^ h onest Ø

  • Python是Pi的编程语言。如果您知道Python,请使用它。此外,还提供了Python框架,可轻松创建网站。
  • 我建议使用Node.JS,因为它非常轻巧,但是您需要学习它。Node.JS旨在轻松处理大量连接。
  • 另一方面,我自己是.NET G33K-我托管.NET MVC网站,因为我可以在自己的开发机上快速构建和部署它们。托管在nginx后面,它们运行非常出色(我什至不敢相信它们的运行效果令人震惊),从2018年开始,Dotnet Core 2.1+可以构建不需要在许多Linux发行版上安装任何额外SDK的本机库。 ,包括Raspbian。

SQL存储方面...如果您觉得自己需要一个功能全面的SQL数据库引擎,则可以使用MySQL,但现在也可以轻松地摆脱SQLlite的困扰


假设OP(或对此问题感兴趣的其他人)不是当日开发人员的javascript / .net / flavor(他/​​她未表示AFAICT),建议一些预编译的软件包和/或教程来帮助您,将有助于评估。
Shreyas Murali

目前尚不清楚OP需要什么样的编程风格。要列出我提到的所有内容的所有软件包,将占用2000多个页面……是的。答案不是很简洁。我提供了LAMP以外的其他选项,以及OP探索的途径。Python,Visual Studio和Node.JS都有自己的存储库,自己的包管理器和大量在线教程……
Piotr Kula

+1对于在RPi上完成的大多数工作,SQLite足够了。我实际上不确定为什么有人使用MySQL。
Jacobm001

1
我必须承认,node.js的想法非常轻巧,这让我发笑。我的意思是,这确实是一种不错的语言,但是无论如何我都不能称其为轻量级
Jacobm001

@ppumkin Woops应该已经指定我的编程实际上是使用c#,JS和.NET应用程序进行的。因此,Node.JS的这一建议对我真的很有吸引力。不知道这是可能的,但现在我真的想尝试一下。知道使用Node建立网站的任何好的教程或指南吗?
J.Doe '16

1

是的,您绝对可以做到。Raspberry Pi 3的功能令人惊讶。我最近在Raspberry Pi 3上建立了一个自托管网站,该树运行带有Nginx,PHP5和MariaDB的HTTPS和WordPress。安全是主要问题,在几天之内,我已经看到许多黑客试图侵入服务器。我在我的网站https://www.e-tinkers.com(在Raspberry Pi上托管)上记录了完整的方法。如果您没有足够的带宽来处理流量,则也可以考虑使用Raspberry Pi托管(仅谷歌搜索Raspberry Pi colo)。


1

我在Raspberry Pi中托管了个人博客。您可以在此页面中查看此小型计算机的统计信息

https://www.flopy.es/monitor/status.html

在同一个覆盆子中,我有自己的博客,我的网页(更为严重的),邮件服务器和使用Nextcloud制作的个人云。


0

免责声明...该答案可能与您的问题有点切线,重点在于托管的方式。我认为进行评估会有所帮助。如果您有其他疑问,请告诉我,我将其删除。

在raspberry pi网站上,这里有完整的教程介绍了设置硬件和所需软件的过程,以在PI上自行托管wordpress安装,并使本地网络中的客户端可以访问它。

在面向互联网的路由器上进行更多配置(端口转发,数据包过滤等)后,应该可以从网络外部访问该路由器。这一点将特定于您的网络如何连接到Internet。

简而言之,这将是实现该目标的众多方法之一

一天中最神奇的词是LAMP

L -inux-推荐的发行版之一是Raspbian,它适合Debian配合使用为PI提供动力的ARM处理器。你可以从这里得到

一个 -pache -古老的Web服务器出一个有

使用安装 sudo apt-get install apache2 -y

有许多调整措施可以控制内存使用,如此处所述

如果您打算将PI用作无头(无显示),则可以用来raspi-config分配给GPU 的内存调整为允许的最小值(我认为为16 MB),从而为应用程序释放更多的RAM。

M -ySQL-最受欢迎的数据库后端之一

似乎要求重新启动apache sudo service apache2 restart

使用安装 sudo apt-get install mysql-server php5-mysql -y

P -hp-不是我个人喜欢的语言

使用安装 sudo apt-get install php5 libapache2-mod-php5 -y

http://wordpress.org/latest.tar.gz下载Wordpress,然后按照教程中的说明将其移至apache的正确文件夹中以进行查找。这样,您就可以开始专注于内容创建了。

HTH


对于资源有限的嵌入式系统上的小型Web服务器,即时钟速度小于256 MB的内存等,我更喜欢使用Linux,PHP,SQL-Lite和NGinx(LIPSLiNG)的组合。
user91822 '18

0

您是否尝试过类似的解决方案这个

尝试在终端中运行此命令:

有关remote3.it的官方教程,请参见本文的底部!

检查操作系统版本

首先,您需要确定Pi上安装了哪个版本的OS。跑:

cat /etc/os-release

您应该看到以下行:

VERSION="8 (jessie)"

这表明您正在使用树莓派Jessie!或拉伸也可以!
如果您使用的是Wheezy版本的Raspbian,或者要支持使用Debian的其他ARM板(例如BeagleBone Black和Wandboard),请按照此处的安装说明进行操作。

安装weavedconnected软件包

首先,获取最新的存储库:

sudo apt-get update

接下来,下载remot3.it weavedconnectd软件包:

sudo apt-get install weavedconnectd

运行weavedinstaller来配置remot3.it服务附件

接下来,运行

sudo weavedinstaller

然后,您应该看到选项列表,按 2,然后按。 enter 然后按照屏幕上的说明输入电子邮件。Remote3.it将向您发送一封电子邮件,其中包含您必须3从此菜单中选择的验证码 。之后,您的帐户将处于活动状态,您可以添加设备和服务。在这种情况下,网站!

现在,您已经创建了一个帐户,选择option 1,然后登录。请注意,键入时不会显示密码。接下来,由于尚未安装任何服务,因此将要求您输入设备名称。有效字符包括数字,字母,空格,下划线和破折号。输入名称后,按 1将remot3.it附加到您的一项服务。选择您要连接的服务类型,在本例中为Web服务器,因此请按Enter键 2!然后将询问您默认端口80是否为press使用的端口 y,如果您不在端口80上,则输入 n,然后正确的端口!您可以根据需要使用任意多个端口重复此操作!选择服务的名称,例如Pi-Web。输入名称后,将其注册到您的帐户还需要几秒钟。接下来,您将返回到Installed remot3.it服务菜单。现在,将显示您对Web服务的附件。按4退出或注册具有相应键的新服务或端口!导航到https://remote3.it登录!您将在此处看到您的设备,并可以转到remote3.it帐户中提供的链接来访问服务器!此链接定期更改!不过,您无需端口转发路由器!

Remote3.it官方教程在这里


-1

您可以轻松地在树莓派上托管一个网站。这是乐趣和学习经验。我最近在树莓派上托管了一个博客。它在3 Rpi的群集上达到负载平衡。如果您想看看-https://www.techpint.com

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.