|1.||Please book a Windows Server 2008 R2 - for our own virtual server we chose Hosteurope and are paying around € 20 / month incl. 4 GB memory and unlimited traffic. At this price range, there are always downsides. In our case, some of the service pages are in German only.|
Make sure to size the server according to your business model. Remember, that a photo book can take up to 2 * 2 GB of disk storage - 2 GB for the uploaded pages and another 2 GB for the stitched cover & content PDFs stored in the print queue folder. You may look into Amazon or likewise cloud offers, especially if you are licensing an Online Designer.
|2.||Send us the Login-Data for KIS, the Control Panel and for Windows Remote Desktop. In the Control Panel, you can change the server password for the Administrator account. You must use numbers and capital letters in the password.|
|3.||Register your domain in the KIS Administration (or likewise) AutoDNS settings (see image below). Create the subdomains demo1, shop1 and mail. Opencart will not function without an SMTP mail server, which is why we later install the free and very good hMailServer.|
Create a subdomain admin.domain.name, which you can later access through ports 80 (Default Web Site) or 8082 (3P BackOffice).
Now update the name servers of your registered domain to the displayed primary and secondary hostnames (see example above), and tell us the name of your domain. demo1.domain.name will point to subshop 3pdemo-en, and shop1.domain.name to subshop 3pshop-en in the OpenCart multicart installation. You can later add as many subdomains as you like, one for each of your subshops.
admin.domain.name will be your Default Web Site. If you plan to host your homepage on the server as well, you can add a www hostname.
|4.||Purchase an SSL certificate for the server.|
On the Windows Server
|1.||Download & install TortoiseSVN (64 bit) and read up on how to use SVN in the Windows Explorer|
|2.||Start the Windows Explorer. In the Folder C:\inetpub\wwwroot, please checkout the following URL:|
https://balou.pixpedia-publisher.com:444/svn/3p_xchange into folder C:\inetpub\wwwroot. Make sure to remove the 3p_xchange subfolder at the end.
You will need a username (3p_..) and password from 1STEIN for this action.
After checkout, you will see a couple of new subfolders below your company name, incl. opencart and openoffice
|3.||In the SVN subfolder \4all\3p_install you will find some tools that need to be installed on the server. Some must downloaded from the Web:|
- Notepad++ text editor
- WinMerge file comparison tool (for SVN)
- PHP 5.4 through Microsoft Web Patform Installer
- mySQL 5.5 64 bit community server
- HeidiSQL mySQL desktop
- hMailServer to send mails from Opencart
- All files named FMsoft_uniGUI...setup.exe (you will need a license from 1STEIN)
- AccessRuntime to view MDB database files
- ODBC mySQL connector to connect from Access MDBs to mySQL (only 32 bit !)
- (libmysql55.dll: automatically installed into openoffice)
- (Visual C++ redistributable - only in case it is required by some other software)
|4.||Change the Windows server Computer Name to something like WS2008-3P|
|5.||Add the IIS server role:|
After installation of PHP, Rename and copy the php.ini from the 4all\3p_install folder to C:\Program Files (x86)\PHP\v5.4
You can compare the changes to the default php.ini using the WinMerge utility you installed above. Especially the following changes are required:
upload_max_filesize = 200M
max_file_uploads = 200
post_max_size = 200M
memory_limit = 256M
allow_url_fopen = on (for SMTP hMailServer)
|7.||Configure IIS (Internet Information Server)|
For more PHP settings see IIS-Manager > Servername > PHP-Manager
Check if FastCGI extension for PHP was installed correctly:
Add MIME types, i.e. filetypes that need to be downloaded through the web server, like:
.dmg - application/octet-stream (for Publisher OSX download)
.json - application/json (for Cron Jobs)
.pkg - application/octet-stream (for Publisher OSX download)
.jpg_rc6, png_rc6 - application/octet-stream (for crypted image resources download)
Define Sites for the 3P Demo Shop (demo1.domain.name) and for each subshop (shop1.domain.name), and set the bindings to your registered domain name.
All folder paths (rightmost column) should point to the same OpenCart installation - example:
If you want to add stores to your OpenCart installation, you must bind the corresponding URL to the same OpenCart folder, and register this URL in the 3P OpenCart Administration > System > Settings. OpenCart decides through this URL, which shop is displayed. I you want to have another URL point to the same shop, you can only do this through a Redirect definition (web.config) in the IIS. The secondary URL must be redirected to the primary URL which is defined in the admin settings:
Assign Modify and Write permissions to the folder C:\inetpub\wwwroot\opencart for:
|•||IIS_IUSRS (application pools)|
|•||IUSR (anonymous authentication requests; needed as of Windows Server 2012 with IIS7)|
|•||the two IIS AppPool\AppPoolName accounts|
|8.|| Configure hMailServer|
In Windows Server Manager, add the feature SMTP Server & Services, then open IIS6 Manager and end Virtual SMTP server in case it was started
Make sure the Windows SMTP Mail Service is running and set to Automatic.
Define Reverse DNS in your virtual server administration panel: KIS > Administration > IP networks > Reverse delegation
In the Windows Firewall, define and Inbound rule for port 25 (SMTP) and 143 (IMAP)
In hMailServer, edit the following items (for details consult the mail server help file). First define a Domain and an Account (default service), then edit the IP Ranges and the Ports:
Next, go to Settings > Protocols > SMTP > General and increase the Maximum message size, if you plan on receiving modified (corrected) PDF pages by mail from a customer. Under Delivery of email set the local hostname to mail.yourdomain.com.
|9.||Since 1STEIN and your own local Administrator may need to work on your Windows server simultaneously, you need to allow multiple Remote Desktop sessions for the same user (i.e. Administrator). On the server, open the registry editor and change the following key to 0:|
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\fSingleSessionPerUser = 0
|10.||Setup & configure 3P BackOffice|
In the Windows Firewall, define an Inbound rule port 8082
Create a shortcut to launch C:\inetpub\wwwroot\ikona\openoffice\BackOffice.exe
This starts your 3P BackOffice application server, which you can access from any browser through http://admin.domain.com:8082
The application will only launch correctly, after the mySQL tables are created in the next chapter Setting up the Store
In the same folder as the BackOffice.exe you find a BackOffice.ini - open this file in Notepad++ (You should associate .ini and .txt files with Notepad++).
In this file you should see the following sections - please make sure to put the correct values in the values marked red:
AjaxTimeout is the number of seconds the application can run without interaction in a browser: 1.200.000 = 20 Min.
<appdir> will be dynamically replaced by the application.
PrinterViews=Print Queues,Customers,Order Status,Print Jobs,Product Categories,Products,oc_3p_queue,oc_3p_queue_product
LocalDatabase="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=<appdir>\3p_db.mdb;Persist Security Info=False;Mode=ReadWrite|Share Deny None;"
ZeosDatabase="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=<appdir>\3p_db.mdb;Persist Security Info=False;Mode=ReadWrite|Share Deny None;"
Use the free NSSM (non-sucking service manager) utility to create a Windows Service, which launches Backoffixe.exe whenever the server is restarted or the application crashes. You can find a zipped copy in the SVN repository 3p_xchange\4all\3p_install. Extract this into a folder on your server and run 3P install service.bat. Make sure you select delayed start, so 3P BackOffice only starts after the mySQL service has been launched. This is also advised for the hMailServer, as seen in the following screenshot:
|12.|| In the SVN 3p_xchange\3p_install folder, locate the file curl 7.3.4 win64.zip and unpack this to c:\curl\|
Open opencart\3p_installer\create_crons.bat in Notepad++ and replace domain.name with your domain name. Run create_crons.bat to shedule the Cron Jobs.
For runtime protocoling, open Server Manager Configuration > Task Sheduler and call Enable all Tasks History.
For every task, set Run whether user is logged on or not (you will be asked for the Administrator password), otherwise the task will not run when you close the Remote Desktop Session.
For every task, set Run task as soon as possible after a sheduled start is missed.
Read more about Cron Jobs