Hi Lian -

If the same response is coming back from curl going both direct and through
Knox then it seems that Knox proxying is working properly - at least until
that point.

Have you looked at the javascript console in the browser to see whether
there are any errors?
In order for Zeppelin to work you will also need to proxy the websocket
connections - so make sure that you follow the docs [1] completely.

Dev tools and the javascript console should provide you with some more
details hopefully.

thanks,

--larry

1. http://knox.apache.org/books/knox-1-0-0/user-guide.html#Zeppelin+UI

On Mon, Jun 11, 2018 at 7:56 PM, Lian Jiang <[email protected]> wrote:

> Hi,
>
> I am using HDP2.6, knox, ranger, ldap. I can access zeppelin directly
> using admin/admin as username/password. However, accessing zepplin via knox
> gets 200 status code but empty page.
>
> Using curl, I found the responses (at the end) are the same for:
>
> without knox:
> curl -ik -H 'Cache-Control: no-cache' -u admin:"password"
> http://test-namenode.subnet1.hadoop.oraclevcn.com:9995
>
> with knox:
> curl -ik -H 'Cache-Control: no-cache' -u admin:"password"
> https://test-namenode.subnet1.hadoop.oraclevcn.com:8443/
> gateway/ui/zeppelin
>
> Any idea why the browser does not show the login page? Appreciate any help!
>
>
>
> Response:
>
> HTTP/1.1 200 OK
> Date: Mon, 11 Jun 2018 23:51:00 GMT
> Date: Monday, June 11, 2018 11:51:00 PM GMT
> Access-Control-Allow-Credentials: true
> Access-Control-Allow-Headers: authorization,Content-Type
> Access-Control-Allow-Methods: POST, GET, OPTIONS, PUT, HEAD, DELETE
> X-FRAME-OPTIONS: SAMEORIGIN
> X-XSS-Protection: 1
> Accept-Ranges: bytes
> Content-Type: text/html
> Last-Modified: Thu, 04 Jan 2018 10:59:02 GMT
> Server: Jetty(9.2.15.v20160210)
> Content-Length: 3783
>
> <!doctype html><!--
> Licensed under the Apache License, Version 2.0 (the "License");
> you may not use this file except in compliance with the License.
> You may obtain a copy of the License at
>
> http://www.apache.org/licenses/LICENSE-2.0
>
> Unless required by applicable law or agreed to in writing, software
> distributed under the License is distributed on an "AS IS" BASIS,
> WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
> See the License for the specific language governing permissions and
> limitations under the License.
> --> <html ng-controller="MainCtrl" class="no-js"> <head> <meta
> http-equiv="X-UA-Compatible" content="IE=edge"> <meta charset="utf-8">
> <title></title> <!-- disable caches for all browser --> <meta
> http-equiv="cache-control" content="max-age=0"> <meta
> http-equiv="cache-control" content="no-cache"> <meta
> http-equiv="cache-control" content="no-store"> <meta http-equiv="expires"
> content="0"> <meta http-equiv="expires" content="Tue, 01 Jan 1980 1:00:00
> GMT"> <meta http-equiv="pragma" content="no-cache"> <meta
> name="description" content=""> <meta name="viewport"
> content="width=device-width"> <!-- ACE CSS autocomplition issue workarounds
> --> <style type="text/css">div.ace_editor.ace_autocomplete
> .ace_marker-layer .ace_active-line { z-index: -1 !important; }</style> <!--
> Place favicon.ico and apple-touch-icon.png in the root directory --> <link
> rel="stylesheet" 
> href="/gateway/ui/zeppelin/styles/vendor.ead2f1215177b914.css">
> <link rel="stylesheet" href="/gateway/ui/zeppelin/
> styles/main.5e840e18559d1996.css"> <link rel="stylesheet"
> ng-href="/gateway/ui/zeppelin/assets/styles/looknfeel/{{looknfeel}}.css">
> <link rel="stylesheet" 
> href="/gateway/ui/zeppelin/assets/styles/printMode.css">
> <body ng-class="{'bodyAsIframe': asIframe}"> <!--[if lt IE 7]>
>     <p class="browsehappy">You are using an <strong>outdated</strong>
> browser. Please <a href="http://browsehappy.com/";>upgrade your
> browser</a> to improve your experience.</p>
>     <![endif]--> <toast></toast> <div ng-include src="'components/navbar/
> navbar.html?v=1515063488639'"></div> <!-- Add your site or application
> content here --> <div id="main" class="container"> <div ng-view></div>
> </div> <!-- Modal ::  Keyboard shortcuts --> <div ng-include
> src="'components/modal-shortcut/modal-shortcut.html?v=1515063488639'"></div>
> <div ng-controller="NotenameCtrl as notenamectrl"> <div
> id="note-modal-container" ng-include src="'components/noteName-
> create/note-name-dialog.html?v=1515063488639'"></div> </div> <div
> ng-controller="NoteImportCtrl as noteimportctrl"> <div
> id="note-import-container" ng-include src="'components/noteName-
> import/note-import-dialog.html?v=1515063488639'"></div> </div> <div
> ng-controller="LoginCtrl as noteimportctrl"> <div id="login-container"
> ng-include src="'components/login/login.html?v=1515063488639'"></div>
> </div> <div ng-controller="RenameCtrl"> <div ng-include
> src="'components/rename/rename.html?v=1515063488639'"></div> </div>
> <!--[if lt IE 9]>
>     <script src="scripts/oldieshim.8967257085f0b83a.js"></script>
>     <![endif]--> <script type="text/x-mathjax-config">var config = {
>         extensions: ["tex2jax.js"],
>         jax: ["input/TeX", "output/HTML-CSS"],
>         tex2jax: {
>           inlineMath: [ ["\\(","\\)"] ],
>           displayMath: [ ['$$','$$'], ["\\[","\\]"] ],
>           processEscapes: true
>         },
>         "HTML-CSS": { availableFonts: ["TeX"] },
>         messageStyle: "none"
>       }
>       // add root only if it's not dev mode
>       if (Number(location.port) !== 9000) {
>         config.root = '.';
>       }
>       MathJax.Hub.Config(config);</script> <script
> src="/gateway/ui/zeppelin/scripts/vendor.b8e51cdeeccd208d.js"></script>
> <script type="text/javascript" src="/gateway/ui/zeppelin/app.
> 05bbdae750681c30f521.js"></script>
>
>
>

Reply via email to