VisualEditor/Installation on a shared host

VisualEditor requires a Parsoid service, (using the Parsoid/Developer Setup here). Parsoid requires Node.js running in the background at all times. Most shared-hosting companies don't provide this. If you cannot move your wiki to a dedicated hosting solution such as a VPS, then a workaround is to install Parsoid on a cloud platform which supports Node.js, such as Heroku.com. Be aware that this is not an official hack.


 * 1) Install Extension:VisualEditor on your wiki as per usual. (You can download it from here, the best will be the latest stable relase).
 * 2) Sign up with Heroku.com.
 * 3) Install the Heroku Command Line utility.
 * 4) After successful installation, open "Start Command Prompt with Ruby" (You have just installed it) and create new folder (You can do it manual by typing this command "Mkdir C:\folder1").
 * 5) Next, change path to your created folder (folder1). (You can do it by typing this command "cd C:\folder1").
 * 6) Download Parsoid using this command:
 * 7) After successfully downloading, go to parsoid location on your disk (For example here "C:\folder\parsoid").
 * 8) Open , and change   according to your wiki:
 * 9) The first parameter is the "prefix". The "prefix" is the name given to this wiki configuration in thedeprecated Parsoid v1 API - Leave this option as default 'localhost'.
 * 10) The second parameter is "domain". The "domain" is used for communication with Visual Editor and RESTBase - Leave this optoin as default 'localhost'.
 * 11) The third parameter is "uri". The "uri" is the URL to your API (normally this is in the root-folder and called api.php) - Change this option according yor wiki (For example http://wiki.mysite.com/api.php or http://mysite.com/w/api.php or something like that).
 * 12) "Proxy" parameter leave as default.
 * 13) If you use SSL on your wiki with a self-signed certificate you should uncomment   in Line 102. You should still use HTTP in the URL above instead of HTTP!
 * 14) Once you applied the changes save the file as.
 * 15) Now you also need to change the file package.json and add this to the end of the file: (Your package.json file should look like this )
 * 16) Finally the last change is in the file  (In root parsoid folder). Here you need to remove the line  . (Line 11)
 * 17) Now change to another folder (folder2) in your console. (You can do it manual by typing this command "Mkdir C:\folder2 and cd C:\folder2").
 * 18) Now, login to your heroku account by typing
 * 19) Type   to create a new app. This will also create a git remote called heroku.
 * 20) Then open your app on Heroku.
 * 21) In "Settings" edit the "Reveal Config Vars" and add the following two parameters:
 * 22) Key:  Value:
 * 23) Key:  Value:
 * 24) Now copy your files from the parsoid folder in folder 1 to folder2.
 * 25) Then add all files to your git repository:   and after this
 * 26) Commit the changes:
 * 27) You'll see git editor.You can get out of it by typing the command  . After this u show message "Aborting commit due to empty commit message". Don't worry this is normal.
 * 28) Next, add your Heroku app as a Git remote
 * 29) Commit by typiing
 * 30) Upload the files to Heroku:
 * 31) Now you should get a positive response.
 * 32) Before you run your app set Heroku to run it with one dyno:
 * 33) To test your installation open your app: URL is http://APPNAME.herokuapp.com
 * 34) You should see a HTML-Page titled   which shows that Parsoid is working.
 * 35) Now it's time to change your LocalSettings.php
 * 36)  - Enable VisualEditor by default for everybody
 * 37) If you run a private wiki then you have to set the following variable to true:
 * 1) If you run a private wiki then you have to set the following variable to true:
 * 1) If you run a private wiki then you have to set the following variable to true:
 * 1) If you run a private wiki then you have to set the following variable to true:
 * 1) If you run a private wiki then you have to set the following variable to true:
 * 1) If you run a private wiki then you have to set the following variable to true:
 * 1) If you run a private wiki then you have to set the following variable to true:
 * 1) If you run a private wiki then you have to set the following variable to true:
 * 1) If you run a private wiki then you have to set the following variable to true:
 * 1) If you run a private wiki then you have to set the following variable to true:
 * 1) If you run a private wiki then you have to set the following variable to true:

Example Parsoid in Heroku
See https://still-crag-8044.herokuapp.com/

External resources

 * Getting Started with Node.js over Heroku Manual