You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

AWS EC2实例中RStudio Server可运行Shiny应用但Shiny Server加载失败

问题原因

RStudio Server运行应用时使用你登录的个人用户身份,而Shiny Server默认配置下以shiny系统用户运行应用,两者的运行环境、权限、R包搜索路径完全不同,这是此类问题的核心诱因。

排查与解决步骤

  • R包路径不兼容问题
    你在RStudio中安装的R包默认存放在当前用户家目录下的私有R库(例如~/R/x86_64-pc-linux-gnu-library/4.0/这类路径),shiny用户无权限读取该路径,也不会默认加载该路径下的R库。
    解决方法二选一即可:
    1. 修改shiny-server.conf中的run_as参数,将run_as shiny;改为run_as 你登录RStudio使用的用户名;,改完重启Shiny Server服务生效
    2. 用sudo权限将应用依赖的所有包安装到系统级公共R库,执行命令:sudo R -e "install.packages(c('依赖包1','依赖包2'), lib = .Library)"
  • 应用文件权限问题
    存放在/srv/shiny-server/下的应用文件(包括app.R、ui.R、server.R以及关联的静态数据文件)需要确保运行应用的用户有对应读写权限。
    解决方法:如果用默认的shiny用户运行,执行命令sudo chmod -R 755 /srv/shiny-server/你的应用目录;如果修改了run_as为个人用户,执行命令sudo chown -R 你的用户名:你的用户组 /srv/shiny-server/你的应用目录
  • 硬编码路径问题
    如果应用中写了硬编码的绝对路径,例如读取/home/你的用户名/data/xxx.csv这类个人家目录下的文件,shiny用户无权限访问对应路径会导致初始化失败。
    解决方法:将应用内所有路径改为相对路径,所有用到的资源文件统一放到应用目录下管理。
  • 查看应用具体报错
    你当前提供的是Shiny Server全局日志,仅提示初始化失败,具体报错会单独存放在/var/log/shiny-server/目录下对应应用的日志文件中,查看对应日志可直接定位具体故障点。

内容的提问来源于stack exchange,提问作者Erin

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.01 20:45:04