SSL,Tomcat和Grails

WaZ*_*WaZ 17 ssl grails tomcat

我想在Grails中实现SSL.我在Grails文件夹结构中找不到文件/conf/server.xml.有人实施过吗?

任何帮助深表感谢.

Bur*_*ith 12

您可以运行grails run-app -https而不是,grails run-app它将为您创建自签名证书并在SSL中运行.

  • 稍微纠正一下,我相信它是'grails run-app -https'.文档:http://grails.org/doc/2.2.0/ref/Command%20Line/run-app.html (4认同)

ata*_*lor 12

如何设置它取决于您部署grails应用程序的方式.

如果要部署到像tomcat这样的容器,请像平常一样安装和配置SSL.然后只需构建一个war文件grails war并正常部署.特别是对于tomcat,打开顶级tomcat server.xml并添加SSL Connector,如下所示:

<Connector port="8443" maxHttpHeaderSize="8192"
    maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
    enableLookups="false" disableUploadTimeout="true"
    acceptCount="100" scheme="https" secure="true"
    clientAuth="false" sslProtocol="TLS"
    SSLEngine="on"
    SSLCertificateFile="/path/to/cert.pem"
    SSLCertificateKeyFile="/path/to/key.pem"
    SSLPassword="passphrase"
     />
Run Code Online (Sandbox Code Playgroud)

将连接器端口调整为443以直接在默认端口上接受SSL请求.然后将war文件放入webapps文件夹.

对于嵌入式开发服务器(jetty),将您的证书导入带有keytool的密钥库,并将其放在ssl/keystore下的grails工作目录中.这看起来像$ HOME/.grails/1.2.1/ssl/keystore.密钥库密码必须为"123456".然后用grails运行grails grails run-app --https.如果密钥库文件不存在,Grails将创建密钥库文件,但如果将其替换为您自己的密文库文件,则不会覆盖它.