SETTING UP EXHIBIT ENGINE 1.5 UPLOAD SYSTEM THE FIRST TIME
EE 1.5 caters for very complex ftp server and upload systems, but this tutorial tries to simplify setup as much as possible. EE upload system is made of
- Ftp servers which store images and where image folders are created by EE.
- Graphics modules meaning various PHP modules and system libraries which resize, sharpen and modify images and also read EXIF and IPTC data from images.
- Resize methods meaning list of preset sizes you want to use for resized images.
- Path system which binds all components together. They tell EE image address, upload location, server used, required size and size menu name.
- Upload page which is the 'daily' interface for adding photo into ee database.
|
VERY IMPORTANT: FOLLOW THIS SETUP MANUAL PAGE FROM TOP TO BOTTOM WITHOUT SKIPPING ANY CHAPTERS. PROCEEDING TO NEXT CHAPTER IS FUTILE IF CURRENT ONE IS NOT CLEARED AND TESTED. |
1. FTP SERVER SETUP
IMPORTANT: You must get a successfull result in ftp server test before you can use any EE's upload or copy/move/delete commands. |
REQUIREMENT: FTP MODULE INSTALLED IN PHP
 Click image to enlarge |
Open EE's server info in editor and there you will see if you have ftp installed in your php. Click image on right to view how it would look when all is ok (amount of functions may differ between PHP versions). If you get a red texts saying it is NOT installed, then you should contact your server admin and request that they install ftp in your server's PHP. EE 1.5 can not upload without working PHP FTP module.
STEP 1: GET REQUIRED INFORMATION FOR SETTING UP FTP SERVER
You will need to know:
- ftp server name, ftp username and ftp password
- ftp path to EE folder
How to find these out?
1. FTP SERVER NAME, FTP USERNAME AND FTP PASSWORD
These are same ones you used when uploading EE files to your server. They are always provided by your server admin. When you rent server space this info is posted to you in email.
2. FTP PATH TO EE FOLDER
Ftp path to you Exhibit Engine gallery folder is the path which you need to enter in ftp in order to reach EE install folder after you login into your ftp account. |
Let's find it out.
You used an ftp program to upload EE files to your server right?
Open that same program, connect to your server and go (= browse, traverse, move) to the same folder where you installed EE, so that you see all EE files (index.php, fetchsettings.php and so on).
 Seeking ftp path to EE. Click image to enlarge |
Now you are in EE install folder. Only task left is to find out full ftp path to this folder: that is "ftp path to EE folder" what you are seeking. Some ftp programs display the current path in user-interface, with some you will have give command PWD to see the path of current directory. In SmartFTP for example, you type PWD on command line and press enter - it displays the current path in information window.
Ftp path always starts with a slash / and ends without a slash. Examples:
- /www/gallery
- /var/www/html/public/ee
- /sites/public_html/photos
- /html/galleries/ee
STEP 2: EDIT FTP SERVER
 One ftp server added. Click image to enlarge |
Go to Exhibit Engine input folder, and open "ftp server setup" editor. Here, add a new server, type in your server name, username, password and into test folder type the "ftp path to EE folder" you just found out. Double-check what you just typed in for spelling errors. Press "UPDATE ALL SERVERS" button to save new settings.
EE HOME FTP SERVER
As this tutorial uses ftp path which already points to EE install folder, you may fill out EE Home ftp server settings with same data you used for above ftp server. EE home ftp server is used for copying/moving and deleting photos and e.g. rethumbnailer uses it as cache server.
STEP 3: TESTING FTP SERVER
 Succesfull FTP Server test.
Click image to enlarge |
Now, press "test now" link on the same line your new server info was entered. EE will do a test which tests connecting, logging in, creating and deleting directories, uploading files and getting their size and modified date and logging out.
IF YOU GET A GREEN OK from all tests
then you are ready to proceed setting up graphics modules.
IF TESTS FAIL
- Follow the test report from top to bottom. If connection fails then all below it will fail. If directory creation fails then directory deletion will fail. So, look for the FIRST failed command AND command BEFORE IT. The error message reported by ftp server usually refers to the previous test command.
- If you have connection problem, you have something wrong in your servername, username or password. Or perhaps the login to your site is restricted to certain IP only, or you have set your firewall to prevent ftp connections?
- If you get an error compaining that function does not exist or function not available then your PHP installation does not have ftp module installed, or it is not installed properly. Faulty ftp module installation (meaning ftp function is there but does not work) in PHP will often result into a timeout/hang (nothing happening in ftp message window) right after EE has written "FTP TEST PROCEDURE STARTED" in ftp message window.
- If you get lots of errors like FAILED Reason: ftp_chdir(): /html/gallery: No such file or directory OR FAILED Reason: ftp_mkdir(): ee_ftp_test_directory_creation: Permission denied it means the test path is not accessible by ftp. This basically means the path is wrong.
- If you have an error in "SET PASSIVE MODE" test, then remove passive mode switch from your ftp settings (as it can not be used there is no point keeping it on althought this is not a fatal error).
- If you get an error in disconnection from server it is most likely a PHP bug (fixed in latest PHP's),. This error does not affect uploading. If this is the only error you get you can proceed to next chapter.
- Doublecheck that folders
- /gallery/input/UPLOAD
- /gallery/input/UPLOAD/ee_temp_upload
- /gallery/input/UPLOD/test
Have full permissions (CHMOD 777)
2. GRAPHICS MODULE SETUP
IMPORTANT: EE does not include any graphics module or library. They are always installed by your www server admin. |
Graphics module setup means checking which graphics modules or libraries are installed on your server (by your server administration personnel) and marking those that are indeed working "active" for EE to use. BEFORE DOING THE MODULE TESTS DISABLE YOUR BROWSER'S PAGE CACHE SO IT DOES NOT GIVE YOU FALSE RESULTS.
 Succesfull ImageMagick test.
Click image to enlarge |
IMAGEMAGICK
Imagemagick is open source graphics library with lots of functions like sharpening and watermarking. It is the recommended engine for use with EE.
Imagemagick consists of several command line programs which are installed to system by server admin. EE needs to know server path to two of these programs: convert and composite. Your server admin/support will give you path to convert (composite is always on same path). You server admin will also let you know if IM is installed or not on your server. ImageMagick works only when PHP's SAFE MODE is OFF or it has been placed in SAFE MODE EXEC DIR by server admin - you will get all this info from the admin.
When path to composite and convert are good, EE will display "PATH OK." below them. Do not attempt testing of Imagemagick before paths are correct.
PROFILE setting is a setting which tells Imagemagick remove EXIF and IPTC data from resized images. This will make pages load faster as thumbnails can be made very small in bytesize. EE offers three possible profile commands. AFTER PATHS ARE OK, do the test, and if test fails: change and save the profile command and try the test again. What you are seeking here is a profile command that a) works and b) reduces test image size to ca. 3KB. When this profile command is found and test is ok you can click that green button "ImageMagick is installed" and let EE know it is ok to use it from now on.
GD 1 & 2
GD is PHP module which is included in latest PHP versions, and must have been installed by server admin. It has two possible main versions, version 1 which is 256-color capable, and version 2 which is truecolor capable. There are no special settings for GD tests, they either are installed or are not. Only either GD 1 or GD 2 can be marked active for EE, not both. Always use GD 2 if you have one on system and you don't have Imagemagick. When GD test is ok you can click that green button "GD is installed" and let EE know it is ok to use it from now on.
IMAGICK
Imagick is a PHP module which uses Imagemagick (needs to be installed). The only reason you would want to use this module is when your PHP system is in SAFE MODE and you are not allowed to run Imagemagick directly. This module is not by default in PHP, it must be installed separately by server admin.
EXIF
EXIF is PHP module which is included in latest PHP versions, and must have been installed by server admin. It lets EE read camera data from images so that shutter speed, ISO, time, aperture etc. can be added to database without manual work. When EXIF test is successfull you will see many lines of text holding camera data. If you see that, click the green button "EXIF is installed" and let EE know it is ok to use it from now on.
IPTC
IPTC data holds textual info about categories, headers and descriptions. They can be entered e.g. in Adobe Photoshop's File Info dialog. EE will get image descriptions, headers and locations etc. from IPTC, if that data is available and if IPTC module has been installed in PHP.
3. RESIZE METHOD SETUP
After you have verified and marked either Imagemagick or GD as working graphics module for EE, you can start making resize methods. Resize methods are simply presets for different image sizes. Depending on selected graphics engine, resize method can only resize, or it can also sharpen and add watermarks etc.
 Some resize methods.
Click image to enlarge |
Editing resize methods is pretty straightforward. When ImageMagick is in use and selected as resize method graphics engine you can preview the changes (save first). With ImageMagick You can choose watermark (24-bit transparent PNG image which is place on top of image as copyright logo) and sharpening. It is always adviced to keep "remove profiles" command on, and "extracommand" field empty (unless you know how to give direct Imagemagick commands).
There are two separate pages in resize method editor, one for big sizes and one for thumbs. For security reasons thumb methods can not be deleted. You can remove unused methods by clicking "remove unused resize methods" button on big size page.
Resize method names are build automatically from current settings. You may add you own addition to name by entering into "additional editor menu text" field.
4. PATH SYSTEM SETUP
Now you have working ftp servers, working graphics engine(s), working resize methods. Let's bind all this to one element called a "PATH".
When you open path editor, you will see three sections:
- size paths
- thumb paths
- microthumb paths
Before adding anything there you will need a strategy here so read on! Do not try to understand everything, we'll get there soon.
URL
URL means http address to a photo. E.g. http://www.yoursite.net/gallery/photos/small/
FTP SERVER
This menu contains all your ftp servers. Select one that works and matches both URL and FTP folder.
FTP FOLDER
In above FTP SERVER SETUP you found your own "ftp path to EE folder". That is the base for anything written here.
RESIZE METHOD
Here you have a list of all your resize methods which use any graphics engine that you have marked active for EE to use.
RELATIVE PATH
This is "server path from input folder to the folder in path's URL"
You may have noticed I did not explain variable or menu text - forget those for now.
Forming a strategy
- Let's say URL to your EE is http://www.yoursite.net/gallery/
- I created and tested one ftp server which I called by name "local".
- I made several resize methods for different sizes
- In setting up ftp server you found your FTP PATH TO EE FOLDER. This is the base to all path settings. Let's say it was /www/gallery
- You do not have image folder in EE program folder yet, you'll need a name for the image folder. I decide to make it "photos".
- I decide that we do not need any complex size and path systems yet, so let's have only three image sizes: "small", "normal" and "big".
- I'll have thumbs and microthumbs under folder "photos", in folders "thumbs" and "microthumbs".
Ok, now we have a strategy and all the info we need, let's do it.
Three size paths, one for "small" one for "normal" and one for "big", one thumb and one microthumb folder:
SIZE PATH for "small":
URL | http://www.yoursite.net/gallery/photos/small/ |
FTP SERVER | local |
FTP FOLDER | /www/gallery/photos/small |
RESIZE METHOD | IMAGEMAGICK 240 |
SIZE PATH for "normal":
URL | http://www.yoursite.net/gallery/photos/normal/ |
FTP SERVER | local |
FTP FOLDER | /www/gallery/photos/normal |
RESIZE METHOD | IMAGEMAGICK 480 |
SIZE PATH for "big":
URL | http://www.yoursite.net/gallery/photos/big/ |
FTP SERVER | local |
FTP FOLDER | /www/gallery/photos/big |
RESIZE METHOD | IMAGEMAGICK 800 |
THUMB PATH
URL | http://www.yoursite.net/gallery/photos/thumb/ |
FTP SERVER | local |
FTP FOLDER | /www/gallery/photos/thumb |
RESIZE METHOD | thumb (IMAGEMAGICK 110) |
RELATIVE PATH | ../photos/thumb/ |
MICROTHUMB PATH
URL | http://www.yoursite.net/gallery/photos/microthumb/ |
FTP SERVER | local |
FTP FOLDER | /www/gallery/photos/microthumb |
RESIZE METHOD | microthumb (IMAGEMAGICK 43) |
RELATIVE PATH | ../photos/microthumb/ |
|
To display the above demo path scheme with your own data, you can try out this little tool:
input your EE folder's http address, ftp path to EE folder and name of main photo folder.
When you press "show paths" button this page will be reloaded with data you entered.
|
URL, FTP FOLDER and RELATIVE PATH point all to exactly the same folder in your server. They just use difference "notation" because URL is used by web browser, FTP FOLDER is used by ftp upload, and RELATIVE PATH is used by PHP. RELATIVE PATH is easiest to set when you just follow the example and place "photos" folder inside EE program folder. Then it is always of form ../photos/thumb/
 Multiserver size path system (fake).
Click image to enlarge |
When you use several ftp servers, take care: FTP FOLDER must be accessible by the FTP SERVER you choose.
EE will create all needed folders while upload command is in progress.
IMPORTANT: Do NOT use input folder for any image storage (other that originals in upload folder). All paths you set up for thumbs and resized images will be visible in html code in EE's public browser!
What is left in path editor are Menu text and variable. Menu text is the text users see on photo page's size selection dropdown menu. Variable is a PHP 'marker' which distinguish each size for each other. It is left to be edited only because variable name 'default' has a special meaning in EE: default size is the one which is opened when visitor opens photo page first time.
5. UPLOADING
Upload page in EE does not require you to set anything up any more. It is targeted for daily, simple, use without any extra setup procedures. You have a folder which holds the original images, you choose those images, select sizes and target exhibition. All extra settings are remembered between sessions.
So, follow the workflow. In upload page there are clearly marked "chapters" which guide you through choices needed.
|