我使用Crafter CMS建筑工地。现在我将我的域重定向到服务器,但它显示“No Site Set”消息。如何让网站可见?
有关信息,当我使用测试视图时,它可以工作:
http://<address>:<port>/?crafterSite=mysite
我希望当我进入此地址时会显示
http://<address>:<port>/
答案 0 :(得分:3)
如果您希望保持多租户(使用Crafter管理许多站点),那么您只需使用WebServer前置引擎即可自动指示URL中的crafterSite
。作为一个额外的好处,您将使WebServer提供更快的静态资产。以下是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>
或者,如果您只想运行单个站点,则可以禁用多租户并让Engine提供单个站点。此链接有更详细的信息:https://docs.craftercms.org/en/3.0/system-administrators/engine/configure-engine-multi-tenancy.html
答案 1 :(得分:1)
如果您有代理Tomcat的Web服务器:
对于域名的host / vhost,添加一个简单的重写规则,在代理请求之前为每个请求添加?crafterSite = SITEID。
这里有更多信息: https://docs.craftercms.org/en/3.0/system-administrators/engine/configure-engine-multi-tenancy.html