2017-04-11 55 views
1

我只是想通过更改虚拟主机设置来使用代理设置来指向我的apache服务器在node.js应用程序,并且当我尝试通过匹配使所有位置的块匹配时只有具有1级深层网址路径的网址。 /示例工程,但/示例/该死的不起作用。所以我试图改变正则表达式,哪怕是过度杀毒,但我想我会尝试它,我一直在尝试很多其他的正则表达式组合,但没有捕获URL。我可能会补充说,上面这个正则表达式实际上并没有捕获任何东西,它只是显示我的网站索引列表,当我得到的网址。唯一正常工作的正则表达式是“/ *”,但它不会超过1个url /路径/另一个路径Apache位置正则表达式不匹配路径

我检查了我的正则表达式应匹配所有内容https://regex101.com/但仍然apache没有捕获它。

这里是我的配置

<VirtualHost *:80> 

     ServerName my.dev 
     ServerAdmin [email protected] 
     DocumentRoot /home/ggg/Dropbox/host-root/var/www/myleisure.com.au 

     ProxyRequests Off 
     ProxyPreserveHost On 
     ProxyVia Full 

     <Proxy "*"> 
       Require all granted 
     </Proxy> 

     <Location "(.*)*"> 
       ProxyPass http://localhost:3000 
       ProxyPassReverse http://localhost:3000 
     </Location> 



</VirtualHost> 

回答

0

这里是Apache指令配置documentation page

该指令限制了封闭 指令通过URL的范围内,以相同的方式来报价。但是,它 将正则表达式作为参数,而不是简单的字符串。

因此,请尝试使用:

<LocationMatch "(.*)*"> 
     ProxyPass http://localhost:3000 
     ProxyPassReverse http://localhost:3000 
</LocationMatch> 
+0

但是谢谢你这么多。我仍然认识到我需要阅读文档。但在我看来,我不想冒险让我错过某些东西,或者没有意识到文档中的某些东西,所以我宁愿看看是否有人遇到同样的问题。我猜你只是阅读文档。这是我需要努力的技能。 非常感谢你Nomad – lopu

相关问题