我正在开发服务器上使用集中式 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
到 url,这个 URL 指向 /var/www/central-cms
最佳答案
除非我遗漏了什么,它看起来很简单 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
的请求也是如此.表达式
[^/]*
匹配除 /
以外的任意数量的字符,这在这里很重要,因此字符串 cms
出现在 URL 的其他地方不会导致问题。
关于regex - AliasMatch 和 RegEx,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9906433/