在 Elastic Beanstalk 上更改 Apache Tomcat 的文件编码
Posted
技术标签:
【中文标题】在 Elastic Beanstalk 上更改 Apache Tomcat 的文件编码【英文标题】:Change File Encoding of Apache Tomcat on Elastic Beanstalk 【发布时间】:2016-05-05 05:41:19 【问题描述】:在尝试配置我的测试 Elastic Beanstalk 服务器时,我已经用尽了所有选项。
我希望我的应用程序接受中文字符,因此我想将 file.encoding 更改为 UTF8。
这是我得到的最接近的解决方案,但这不会改变当前的非 UTF8 编码。
我创建了一个 .ebextensions 文件夹,下面有 environment.config 文件
files:
"/tmp/update_tomcat_server_xml.sh":
owner: root
group: root
mode: "000755"
content: |
#! /bin/bash
export JAVA_OPTS="$JAVA_OPTS -Dfile.encoding=UTF8"
container_commands:
00_update_tomcat_server_xml:
command: source /tmp/update_tomcat_server_xml.sh
我可以在实例日志中看到 00_update_tomcat_server_xml 但这不会更改 tomcats 字符集。
我还可以提一下我使用的是 SpringBoot 嵌入式 Tomcat 容器。
【问题讨论】:
【参考方案1】:您可以使用记录在 here 中的 jvmoptions 选项设置传递其他 Tomcat 特定选项。
您可以尝试使用以下 ebextension 配置吗:
option_settings:
- namespace: aws:elasticbeanstalk:container:tomcat:jvmoptions
option_name: JVM Options
value: -Dfile.encoding=UTF8
告诉我进展如何!
【讨论】:
以上是关于在 Elastic Beanstalk 上更改 Apache Tomcat 的文件编码的主要内容,如果未能解决你的问题,请参考以下文章
在 Elastic Beanstalk 上更改 Apache Tomcat 的文件编码
AWS Elastic beanstalk - 更改解决方案堆栈名称
Django 在本地迁移工作,但不在 Elastic Beanstalk 生产上
AWS Elastic Beanstalk:如何更改节点命令?在最近的更新中删除了容器选项?