Select to view content in your preferred language

I need to allow the Story Map engine to access images hosted on my website what URL do I need to use?

1056
3
Jump to solution
10-20-2016 11:18 PM
deleted-user-Jy5BV8oa4TPY
Deactivated User

Hi

I have uploaded some images to my website, it is hosted by hostgator.  I have hotlinking protection enabled. So nobody can just enter a link to any of my images from their sites.  I have a list of URLS in the exceptions that are allowed to access and display my images - I use this in forums to display signatures, avatars etc.

I have so far entered the following URLS into my hotlinking exceptions list

http://www.arcgis.com 

Esri - GIS Mapping Software, Solutions, Services, Map Apps, and Data  (this is just esri.com the editor has reformatted it)

https://myorganisationame.maps.arcgis.com
https://www.arcgis.com

so far none of this works, I am still being told by the StoryMap App that my images are not accessible (StoryMap Shortlist)

Does anyone know what URL is being used to test the availability of my images and what URL will be used to view the images when the Story Map is published. I need to add that URL to my exceptions list and then the hotlinking will work.

Thanks

Q

Tags (3)
0 Kudos
1 Solution

Accepted Solutions
OwenGeo
Esri Notable Contributor

Hi Quanita,

I'm not familiar with the hotlink protection feature you've described, but unfortunately I don't think you'll be able to use that feature on images you want to use in your story maps.

From what I can tell hotlink protection allows you to whitelist certain domains from which you want to allow requests for your images. But when someone accesses a story map you've shared it's their computer (not arcgis.com) that requests the images you've linked to in your story. So adding arcgis.com to your exceptions list won't work. My guess is the reason you can't see the images in the story map builder is that you haven't added your own domain to the exceptions list.

Likewise, your readers won't be able to see the images unless you add their domain to the list. Unless you are making a story for a very specific audience, where you can predict the domains from which they are accessing your story, you'll need to make your images public. 

To provide a little more detail, the way a story map works is the reader opens the app and their browser downloads the story map application code and the story data. The story data contains the story's narrative/text, links to media (images, video, maps, etc.), and the structure of how all of this information appears in the story. The reader's browser then requests the media using the links in the story data. A website works in basically the same way, so I believe you'd have this same limitation if you were trying to use protected images in a public website.

Owen

Owen Evans
Lead Product Engineer | StoryMaps

View solution in original post

3 Replies
OwenGeo
Esri Notable Contributor

Hi Quanita,

I'm not familiar with the hotlink protection feature you've described, but unfortunately I don't think you'll be able to use that feature on images you want to use in your story maps.

From what I can tell hotlink protection allows you to whitelist certain domains from which you want to allow requests for your images. But when someone accesses a story map you've shared it's their computer (not arcgis.com) that requests the images you've linked to in your story. So adding arcgis.com to your exceptions list won't work. My guess is the reason you can't see the images in the story map builder is that you haven't added your own domain to the exceptions list.

Likewise, your readers won't be able to see the images unless you add their domain to the list. Unless you are making a story for a very specific audience, where you can predict the domains from which they are accessing your story, you'll need to make your images public. 

To provide a little more detail, the way a story map works is the reader opens the app and their browser downloads the story map application code and the story data. The story data contains the story's narrative/text, links to media (images, video, maps, etc.), and the structure of how all of this information appears in the story. The reader's browser then requests the media using the links in the story data. A website works in basically the same way, so I believe you'd have this same limitation if you were trying to use protected images in a public website.

Owen

Owen Evans
Lead Product Engineer | StoryMaps
deleted-user-Jy5BV8oa4TPY
Deactivated User

Thank you for the reply that makes sense.  The white list option only works where the links are being hosted by a specific URL (in the case of me posting content on other sites this is how it does work).  I didn't realise that the storymap is actually running on the client and NOT being 'hosted' and delivered server side by an esri domain.

0 Kudos
StephenSylvia
Esri Regular Contributor

Hi Quanita,

To clarify and correct Owen's response:

All of our story map apps are "clientside" apps hosted on arcgis.com meaning all the source code and story configuration are hosted on arcgis.com. However, to render the page and and provide an interactive user experience, the code is download and run in a viewers browser. To correct Owen, the referrer domain used for the image request is the story url and not their computer's url.

I believe the hostgator hotlinking protection should still work, however I have not used it before. You may need to be more specific in your list of whitelisted domains. Every story in arcgis.com has four main URL's to access the story. A generic arcgis.com url and an organization specific url, as well as an http and https version of both. For example this story:

http://story.maps.arcgis.com/apps/Cascade/index.html?appid=46daf1304a0c4ad69a8935c7ed2ab692 

Can also be access at:

https://story.maps.arcgis.com/apps/Cascade/index.html?appid=46daf1304a0c4ad69a8935c7ed2ab692 

https://www.arcgis.com/apps/Cascade/index.html?appid=46daf1304a0c4ad69a8935c7ed2ab692 

http://www.arcgis.com/apps/Cascade/index.html?appid=46daf1304a0c4ad69a8935c7ed2ab692 

Try adding all four urls to your whitelist. Alternatively, I recommend checking with hostgator support to see if you can use wildcard characters such as http://*.example.org/* to whitelist all combinations of a url for a specific host at once.

If you still have trouble, you should contact hostgator support to verify you have entered the domains correctly.

0 Kudos