There are many ways that you can structure your web site and Juicebox galleries.
Here are a few tips which might help.
Using the regular embedding code noted here (and presented on the 'Publish' tab of JuiceboxBuilder-Pro), the contents of the gallery folder (not the gallery folder itself) should be uploaded to the same directory as the web page containing the gallery's embedding code.
If you move of rename the gallery's configuration file (default name 'config.xml'), then you can point towards it using a configUrl entry within the gallery's embedding code, for example:
<!--START JUICEBOX EMBED-->
<script src="jbcore/juicebox.js"></script>
<script>
new juicebox({
configUrl: "folder_1/folder_2/configuration_file.xml",
containerId: "juicebox-container",
galleryWidth: "100%",
galleryHeight: "100%",
backgroundColor: "#222222"
});
</script>
<div id="juicebox-container"></div>
<!--END JUICEBOX EMBED-->
No matter whether of not you use a custom configUrl, all relative paths within the gallery's configuration file ( imageURLs, thumbURLs and linkURLs) will be relative to the web page containing the gallery's embedding code.
Short descriptions of the configUrl and baseUrl embed options can be found here.
Alternatively, you could upload a complete gallery folder to anywhere on your web server and point towards it using a baseUrl entry within the gallery's embedding code, for example:
<!--START JUICEBOX EMBED-->
<script src="folder_1/folder_2/gallery_folder/jbcore/juicebox.js"></script>
<script>
new juicebox({
baseUrl: "folder_1/folder_2/gallery_folder/",
containerId: "juicebox-container",
galleryWidth: "100%",
galleryHeight: "100%",
backgroundColor: "#222222"
});
</script>
<div id="juicebox-container"></div>
<!--END JUICEBOX EMBED-->
The baseUrl method of embedding is documented here.
When using the baseUrl method of embedding, all relative paths within the configuration file (imageURLs, thumbURLs and linkURLs) will be relative to the baseUrl.
Additionally, you can upload your gallery's 'jbcore' folder to anywhere you like on your web server. In fact, multiple galleries can even share a single 'jbcore' folder. Please see here for details.
All you need to do is make sure that you point towards the 'juicebox.js' file within the 'jbcore' folder within the <script> tag, for example:
<!--START JUICEBOX EMBED-->
<script src="folder_1/folder_2/jbcore/juicebox.js"></script>
<script>
new juicebox({
containerId: "juicebox-container",
galleryWidth: "100%",
galleryHeight: "100%",
backgroundColor: "#222222"
});
</script>
<div id="juicebox-container"></div>
<!--END JUICEBOX EMBED-->
The location of the 'jbcore' folder is completely independent of the configUrl and baseUrl options (which still work as noted above).
if you use any of the suggestions above, then you will not need to modify any of the paths inside the gallery's configuration file.
However, if you want to store your images elsewhere on your web server (not inside the 'images' and 'thumbs' folders within the gallery folder), then you will need to manually modify the paths (the imageURLs, thumbURLs and linkURLs) inside the gallery's configuration file (by opening the file in a plain text editor) bearing in mind that if you use a baseUrl, then relative paths will be relative to the baseUrl.
I hope this helps.