Project Icon

nginx-playground

交互式Nginx配置实验平台

nginx-playground提供在线交互式环境,供开发者实时编写和测试Nginx配置。该平台采用沙箱技术,确保安全性的同时免除本地安装需求。虽不再主动开发新功能,但仍维护现有功能并接受错误修复。项目包含完整开发指南,适合想深入理解Nginx配置的技术人员使用。

nginx 游乐场

这段代码运行在 nginx-playground.wizardzines.com。 有一篇博客文章解释了设计理念。

基本不再维护

我已经几年没有对这段代码做任何更改,也不打算添加新功能。

不过我愿意合并错误修复,如果你发现了bug,我希望你能在issues中提出。

你可能想要更改的内容

以下是一些特定于我部署此代码的内容,如果你要做重大更改,你会想要删除或更改这些内容:

  • 页眉中的"a wizard zines project"
  • 分析工具(搜索"plausible")
  • fly.toml文件
  • FAQ部分

安全注意事项

可能存在安全漏洞,它给予用户很多访问权限,我个人只会在可能被攻破也不要紧的机器上运行这个软件。不过到目前为止,我还没有遇到任何已知的问题。

我将后端和前端运行在不同的服务器上,这样即使后端被攻破,也不会影响前端网站。你可以直接在GitHub Pages或类似平台上运行前端。

开发设置

开发前端很简单:

cd static
python3 -m http.server 8084 # 或者用任何你喜欢的方式启动一个网络服务器

它硬编码了后端的URL,所以我可以在不运行后端的情况下进行开发。

生成Tailwind CSS:(使用tailwind独立CLI

tailwindcss-macos-arm64 --content  'static/*.html,static/*.js' -o static/css/tailwind-classes.css

开发后端有点麻烦。它只能在Linux上运行(因为依赖bubblewrap),而且开发起来很痛苦,因为它要求nginx安装在特定目录下,并且必须以root身份运行。

以下是我在全新的Ubuntu 22.10安装上成功使用的设置说明:

sudo apt-get install golang nginx bubblewrap
# 安装go-httpbin
go install github.com/mccutchen/go-httpbin/v2/cmd/go-httpbin@latest
# 仅将go-httpbin放入PATH是不够的
cp /go-httpbin的路径 /usr/bin 
# 必须有一个nginx用户
useradd -s /bin/false nginx 
# 启动服务器
bash scripts/run-local.sh

你可以用httpie测试它是否正常工作:

http post localhost:8080/run nginx_config=@examples/basic.conf command="http get localhost"

还有一个watch-local.sh脚本,它使用entr监视你的更改。

理论上应该可以修改bubblewrap的调用方式,使其无需root权限运行(并获得不那么可怕的开发体验),但我没能弄明白如何做到。如果你找到了让使用bubblewrap变得更容易的方法,我很乐意听听。

另外,你肯定可以修改这个项目,使其使用单独的nginx容器镜像,而不需要在主文件系统中安装nginx。

项目侧边栏1项目侧边栏2
推荐项目
Project Cover

豆包MarsCode

豆包 MarsCode 是一款革命性的编程助手,通过AI技术提供代码补全、单测生成、代码解释和智能问答等功能,支持100+编程语言,与主流编辑器无缝集成,显著提升开发效率和代码质量。

Project Cover

AI写歌

Suno AI是一个革命性的AI音乐创作平台,能在短短30秒内帮助用户创作出一首完整的歌曲。无论是寻找创作灵感还是需要快速制作音乐,Suno AI都是音乐爱好者和专业人士的理想选择。

Project Cover

白日梦AI

白日梦AI提供专注于AI视频生成的多样化功能,包括文生视频、动态画面和形象生成等,帮助用户快速上手,创造专业级内容。

Project Cover

有言AI

有言平台提供一站式AIGC视频创作解决方案,通过智能技术简化视频制作流程。无论是企业宣传还是个人分享,有言都能帮助用户快速、轻松地制作出专业级别的视频内容。

Project Cover

Kimi

Kimi AI助手提供多语言对话支持,能够阅读和理解用户上传的文件内容,解析网页信息,并结合搜索结果为用户提供详尽的答案。无论是日常咨询还是专业问题,Kimi都能以友好、专业的方式提供帮助。

Project Cover

讯飞绘镜

讯飞绘镜是一个支持从创意到完整视频创作的智能平台,用户可以快速生成视频素材并创作独特的音乐视频和故事。平台提供多样化的主题和精选作品,帮助用户探索创意灵感。

Project Cover

讯飞文书

讯飞文书依托讯飞星火大模型,为文书写作者提供从素材筹备到稿件撰写及审稿的全程支持。通过录音智记和以稿写稿等功能,满足事务性工作的高频需求,帮助撰稿人节省精力,提高效率,优化工作与生活。

Project Cover

阿里绘蛙

绘蛙是阿里巴巴集团推出的革命性AI电商营销平台。利用尖端人工智能技术,为商家提供一键生成商品图和营销文案的服务,显著提升内容创作效率和营销效果。适用于淘宝、天猫等电商平台,让商品第一时间被种草。

Project Cover

AIWritePaper论文写作

AIWritePaper论文写作是一站式AI论文写作辅助工具,简化了选题、文献检索至论文撰写的整个过程。通过简单设定,平台可快速生成高质量论文大纲和全文,配合图表、参考文献等一应俱全,同时提供开题报告和答辩PPT等增值服务,保障数据安全,有效提升写作效率和论文质量。

投诉举报邮箱: service@vectorlightyear.com
@2024 懂AI·鲁ICP备2024100362号-6·鲁公网安备37021002001498号