Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/grails/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 运行在两个不同域上的Grails应用程序_Java_Grails - Fatal编程技术网

Java 运行在两个不同域上的Grails应用程序

Java 运行在两个不同域上的Grails应用程序,java,grails,Java,Grails,我试图让grails应用程序在两个不同的域下运行-test.com/myapp和test.org/myapphosturl指向https://test.com/myapp当我进入test.org/myapp时,它会正确地进入主页,当我尝试登录时,它会重定向到第一个域。我想这应该与spring安全性和路径生成有关。为了解决这个问题,我有什么选择 这是我的myapp.conf,但如果您需要其他数据,请在评论中告诉我 Alias /.well-known/acme-challenge/ "/var/w

我试图让grails应用程序在两个不同的域下运行-
test.com/myapp
test.org/myapp
<
Config.groovy中的code>host
url指向
https://test.com/myapp
当我进入
test.org/myapp
时,它会正确地进入主页,当我尝试登录时,它会重定向到第一个域。我想这应该与spring安全性和路径生成有关。为了解决这个问题,我有什么选择

这是我的
myapp.conf
,但如果您需要其他数据,请在评论中告诉我

Alias /.well-known/acme-challenge/ "/var/www/html/certbot/.well-known/acme-challenge/"
  <Directory "/.well-known/acme-challenge/">
       Options -Indexes -MultiViews
      AllowOverride None
      Order allow,deny
      Allow from all
  </Directory>

  <VirtualHost *:80>
    ServerName test.com
          RewriteEngine On
          RewriteCond %{HTTPS} off
          RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
  </VirtualHost>

  <VirtualHost *:443>
    ServerName test.com
    ServerAlias www.test.com
    DocumentRoot /var/www/html/honeypot/
    RewriteEngine On
    php_flag engine off
    RemoveHandler .cgi .php .php3 .php4 .php5 .phtml .pl .py .pyc .pyo

    JkMount /*      worker1
    JkUnMount /myapp/files/* worker1
    Alias "/myapp/files" "/var/www/myapp/files"
    <Directory "/myapp/files">
            allow from all
            Options -Indexes
            AllowOverride None
    </Directory>

    SSLEngine on

    SSLCertificateFile /etc/letsencrypt/live/test.com/cert.pem
    SSLCertificateKeyFile /etc/letsencrypt/live/test.com/privkey.pem
    SSLCertificateChainFile /etc/letsencrypt/live/test.com/chain.pem

     SSLProxyEngine on
     ProxyPreserveHost On
     ProxyPassMatch ^/myap(.+)$ !
     ProxyPass / https://myserver.com/
     ProxyPassReverse / https://myserver.com/
  </VirtualHost>
Alias/.well-known/acme challenge/“/var/www/html/certbot/.well-known/acme challenge/”
选项-索引-多视图
不允许超限
命令允许,拒绝
通融
ServerName test.com
重新启动发动机
重写条件%{HTTPS}关闭
重写规则(.*)https://%{HTTP_HOST}%{REQUEST_URI}[L,R=301]
ServerName test.com
ServerAlias www.test.com
DocumentRoot/var/www/html/honeypot/
重新启动发动机
php_标志引擎关闭
RemoveHandler.cgi.php.php3.php4.php5.phtml.pl.py.pyc.pyo
JkMount/*worker1
jkenmount/myapp/files/*worker1
别名“/myapp/files”“/var/www/myapp/files”
通融
选项-索引
不允许超限
斯伦金安
SSLCertificateFile/etc/letsencrypt/live/test.com/cert.pem
SSLCertificateKeyFile/etc/letsencrypt/live/test.com/privkey.pem
SSLCertificateChainFile/etc/letsencrypt/live/test.com/chain.pem
SSLProxyEngine打开
代理主机
ProxyPassMatch^/myap(+)$!
ProxyPass/https://myserver.com/
ProxyPassReverse/https://myserver.com/
更新
grails.serverURL=https://test.com/myapp

也许您应该发布spring security的配置。假设是这个问题,有不同的方法来解决它。一种是,您可以使用Grails.config.locations(请参阅)在Grails应用程序中设置外部配置,然后在Grails.config.locations引用的服务器上的外部文件中覆盖Spring Security的应用程序设置


这允许您单独管理应用程序配置,但部署相同的war。然后,您可以通过一些配置管理系统(如Puppet)来管理外部文件。

可以显示config.groovy file.grails.serverURL config.groovy中的这个参数是什么?@DipakThoke
https://test.com/myapp