2017-04-11 56 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

相關問題