設置REST應用程序或使index.html
文件在CSP Files
目錄下顯示應用程序,甚至可以將此WEB應用程序設置爲服務器的默認應用程序?如何在Caché中設置默認(root,/,index)WEB應用程序?
換句話說,如何通過查詢http://localhost
而不是http://localhost/AppName/
或http://localhost/index.html
來顯示應用程序?
設置REST應用程序或使index.html
文件在CSP Files
目錄下顯示應用程序,甚至可以將此WEB應用程序設置爲服務器的默認應用程序?如何在Caché中設置默認(root,/,index)WEB應用程序?
換句話說,如何通過查詢http://localhost
而不是http://localhost/AppName/
或http://localhost/index.html
來顯示應用程序?
最好的辦法是在實例啓動的Apache服務器中設置路由規則。
具有RESTful應用程序,您需要命名你的WEB應用程序爲「/」,並與調度類中的同名創建路由:
<Routes>
<Route Url="/" Method="GET" Call="Index"/>
...
</Routes>
...然後實現指數方法,如你所願。
如果是index.html
文件 - 我相信有其他人知道解決方案。
如果你想用內部的Apache來實現它,你只需要在Caché中創建root WebApplication。以及我相信你已經做過像/AppName/
之前,只需創建名稱/
。
如果你想用外部Apache來做,那麼我希望你已經有properly配置好了。正是你需要的話,加入這樣的行
<Location />
CSP on
SetHandler csp-handler-sa
</Location>
在你休息的類,你必須已經知道,路線圖使用正則表達式來得到正確的方法。所以,在路線圖中你可以改變它
<Routes>
<Route Url="/(index\.html)?" Method="GET" Call="Index"/>
<!-- or something like this, to catch all static for one method -->
<Route Url="/((?!rest/).*)" Method="GET" Call="GetStatic"/>
...
</Routes>
這是關於UrlMap中正則表達式的一個好處,謝謝!在我的情況下,'index.html'表示CSP子目錄之一中的物理文件。 @joeb建議更改Apache設置以讀取html索引文件 - 就是這樣,想知道這是否是啓用Caché中的HTML索引文件的唯一方法。 – ZitRo
當你設置'CSP on'時,'DirectoryIndex'將被忽略,並且每個請求都將直接發送到Cache,而不做任何修改。在我的項目中,我使用這種方式,並從磁盤返回靜態文件,但使用Cache而不是apache。您可以看到我的課程[示例](https://github.com/daimor/CacheBlocksExplorer/blob/master/Blocks%2FRouter.cls.xml)方法'GetStatic',它以開發模式從磁盤返回文件,並從'XData'中進行製作。 – DAiMor
就是這樣,但它仍然有必要查詢'http:// example.com/index.html'而不是'http:// example.com'而不用像在GetStatic中那樣以編程方式重新定義路徑,它? – ZitRo
謝謝!編輯Apaché的配置來設置'DirectoryIndex index.html'是很好的一點。我只有最後的希望,可以在Caché的某個地方設置它。 – ZitRo