Q:

PFFile returns incorrect Image URL

Here my NGINX Setting,
HTTPS server
   server {
    listen 443 ssl spdy;
    location /myparseserver/ {

                error_page 404 = /404.html;
                error_page 500 502

                503 504 = /404.html;

            proxy_pass http://127.0.0.1:1401/parse/;
            proxy_http_version 1.1;
            proxy_set_header Upgrade $http_upgrade;
            proxy_set_header Connection 'upgrade';
            proxy_set_header Host $host;
            proxy_cache_bypass $http_upgrade;

            }

Parse Server Setting
var api = new ParseServer({
  databaseURI: databaseUri || 'mongodb://localhost:27017/parse-myparseserver',
  cloud: process.env.CLOUD_CODE_MAIN || __dirname + '/cloud/main.js',
  appId: process.env.APP_ID || 'MyAppID',
  masterKey: process.env.MASTER_KEY || '123456', //Add your master key here. Keep it secret!
  serverURL: process.env.SERVER_URL || 'https://localhost:1401/myparseserver',  // Don't forget to change to https if needed
  verbose: true

Here my NGINX verbose result,
verbose: RESPONSE from [GET] /parse/classes/Stories: {
  "response": {
    "results": [
      {
        "objectId": "F17Qm4Gr2f",
        "title": "This is title",
        "createdAt": "2017-06-29T00:58:40.214Z",
        "updatedAt": "2017-06-29T00:59:10.206Z",
        "publish": "1",
        "description": "This is description",
        "category": "1",
        "image": {
          "__type": "File",
          "name": "498f1ea4f3b722bb5a56accdb592bf3f_f19a80f4b870267022a087dd6d8cac37.jpg",
          "url": "http://www.myserver.com/parse/files/MyAppID/498f1ea4f3b722bb5a56accdb592bf3f_f19a80f4b870267022a087dd6d8cac37.jpg"
        }
      }
    ]
  }

My swift code setting,
let configuration = ParseClientConfiguration {
        $0.applicationId = "MyAppID"
        $0.clientKey = "Blank"
        $0.server = "https://www.myserver.com/myparseserver/"
    }

It seems that the 

PFFile URL returns NON-SSL URL and Incorrect PFFile storage path!

The image file can be accessed manually from browser with a little bit changing from parse to myparseserver ,
http://www.myserver.com/myparseserver/files/MyAppID/498f1ea4f3b722bb5a56accdb592bf3f_f19a80f4b870267022a087dd6d8cac37.jpg

Any suggestions would appreciate
Thanks

A:

As mentioned in the docs, did you set publicServerUrl? 
When using files on Parse, you will need to use the publicServerURL option in your Parse Server config. This is the URL that files will be accessed from, so it should be a URL that resolves to your Parse Server. Make sure to include your mount point in this URL.
http://docs.parseplatform.org/parse-server/guide/#configuring-file-adapters

