我正在开发服务器上使用集中式CMS,CMS位于/var/www/central-cms
该网址(我有很多网站)可通过以下网址访问:http://web.localdomain.dev/site1/
。
如何只需输入此网址即可访问cms:http://web.localdomain.dev/site1/cms
?
也许AliasMatch
是解决方案?有关RegExp的任何帮助吗?
实施例
http://web.localdomain.dev/stackoverlow/
http://web.localdomain.dev/google/
http://web.localdomain.dev/yahoo/
等
如果我在网址上附加/cms
,则此网址指向/var/www/central-cms
答案 0 :(得分:6)
除非我遗漏了某些内容,否则看起来简单的Alias
指令会起作用:
Alias /site1/cms /var/www/central-cms
如果这不起作用,您可能需要向我们提供有关您的配置的更多详细信息。
如果要为多个站点完成此操作,可以使用AliasMatch
指令。您可以查看AliasMatch documentation以获取更多信息,包括一些很好的示例,但最终您会得到类似的结果:
AliasMatch ^/[^/]*/cms(.*) /var/www/central-cms$1
这意味着对/site1/cms/foo
的访问权限将转到/var/www/central-cms/foo
...所以请求/site2/cms/foo
。
表达式[^/]*
匹配/
以外的任意数量的字符,这在此非常重要,因此出现在URL中其他位置的字符串cms
不会导致问题。