Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/unix/3.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 如何在Crafter CMS中设置站点?_Java_Crafter Cms - Fatal编程技术网

Java 如何在Crafter CMS中设置站点?

Java 如何在Crafter CMS中设置站点?,java,crafter-cms,Java,Crafter Cms,我使用Crafter CMS来构建网站。现在我将我的域重定向到服务器,但它显示“无站点设置”消息。如何使网站可见 有关它的工作信息,请参阅我使用测试视图时: http://<address>:<port>/?crafterSite=mysite http://://?crafterSite=mysite 我希望当我进入这个地址时它会显示出来 http://<address>:<port>/ http://:/ 如果您有一个代理到Tomcat的

我使用Crafter CMS来构建网站。现在我将我的域重定向到服务器,但它显示“无站点设置”消息。如何使网站可见

有关它的工作信息,请参阅我使用测试视图时:

http://<address>:<port>/?crafterSite=mysite
http://://?crafterSite=mysite
我希望当我进入这个地址时它会显示出来

http://<address>:<port>/
http://:/

如果您有一个代理到Tomcat的web服务器:

对于域的主机/vhost,添加一个简单的重写规则,在代理请求之前将?crafterSite=SITEID添加到每个请求中

这里有更多信息:

如果您想继续使用多租户(使用Crafter管理多个站点),那么您只需使用Web服务器前置引擎,即可在URL中自动指示
crafterSite
。作为一个额外的好处,您将让Web服务器为静态资产提供更快的服务。以下是Apache HTTPd的vhost配置示例:

  <VirtualHost *:80>
    ServerName example.com

    DocumentRoot /path_to_crafter/crafter/data/repos/sites/mysite

    RewriteEngine On
    RewriteRule (.*) $1?crafterSite=mysite [QSA,PT]

    ProxyPreserveHost On

    ProxyPass / ajp://localhost:8009/
    ProxyPassReverse / ajp://localhost:8009/

    ErrorLog ${APACHE_LOG_DIR}/mysite-error.log
    CustomLog ${APACHE_LOG_DIR}/mysite-access.log combined
  </VirtualHost>

ServerName example.com
DocumentRoot/path\u to\u crafter/crafter/data/repos/sites/mysite
重新启动发动机
重写规则(.*)$1?crafterSite=mysite[QSA,PT]
代理主机
ProxyPass/ajp://localhost:8009/
ProxyPassReverse/ajp://localhost:8009/
ErrorLog${APACHE_LOG_DIR}/mysite-error.LOG
CustomLog${APACHE_LOG_DIR}/mysite-access.LOG组合

或者,如果您只想运行单个站点,则可以禁用多租户,并让引擎提供单个站点。此链接提供了更多详细信息:

亲爱的Russ,感谢您的回复。我做到了,但在本例中,如果我使用域名输入,则不会加载外部文件(css、js、图像)。当我使用ip地址进入站点时,一切正常。你能帮我解决这个问题吗?亲爱的@sumerz,谢谢你的回复。我做到了,但在这种情况下/静态资产/如果我使用域名输入,则不会加载。当我使用ip地址进入站点时,一切正常。你能帮我解决这个问题吗?你能发布你的HTTPd配置(你可以用example.com替换你的域名)吗?出于某种原因,在静态资产请求代理之前,crafterSite ID没有被添加到静态资产请求中。另一个选项是使用Apache HTTPD DocumentRoot“/CRAFTER\u INSTALLPATH/repos/sites/your\u SITEID\u HERE”@totali I I missed DocumentRoot指令中的docroot direct将docroot设置在部署目录的顶部,它现在添加到上面的配置中。确保它指向站点的回购(我上面的配置是
交付
节点的典型配置)。