Foreword
Below you will see how to install a backend application. At the end of this procedure you will find a folder named frontends
, containing some frontend examples. Start from here to develop a frontend application.
There is not an automatic setup/install procedure with a graphical user interface for BEdita 3.1 ulmus, but you have to follow some easy steps. A graphical user interface has been introduced from BEdita version 3.2 populus.
Before installing BEdita
First it is necessary that some preliminary requirements are satisfied. See BEdita requirements.
Download BEdita package
If your system does support the requirements listed above you can download the package. This package contains everything you need to setup and use BEdita.
There you will find the real BEdita application (bedita-app directory), the CakePHP framework (cake folder), the template engine Smarty (vendors/smarty dir) and the phpThumb library (vendors/phpThumb dir), and many other libraries used.
Quick install
Copy or unpack bedita directory (content of the compressed source package) in a directory served by the web server. Then:
- create an empty database, create/choose a user with grants on data (DELETE, UPDATE...) and structure (DROP, CREATE,...)
- edit
bedita-app/config/database.php
adding database connection details (host, user,...) - edit
bedita-app/config/bedita.sys.php
; in$config['beditaUrl']
write the web URL to BEdita installation, in$config['mediaUrl']
write the web URL to the media files, normally you can use$config['beditaUrl'] . "/files"
. - make sure
bedita-app/tmp
is writable from your web server - if you haven't mod_rewrite enabled remove
.htaccess
files and uncommentApp.baseUrl
inbedita/bedita-app/config/core.php
. For more detail read the Note below. - launch
./cake.sh bedita init
to check your setup
Optional steps:
- create a root directory for media files, served by your webserver; or use default dir
bedita-app/webroot/files
, already present - edit
bedita-app/config/bedita.sys.php
, in$config['mediaRoot']
write the absolute path to this media root dir, in$config['mediaUrl']
write the web URL to the same directory
Installation details
Here the same instruction from above in more detail.
1. Create the database
Just create an empty database on MySQL and define a mysql user having grants on data (INSERT, DELETE, etc....) and on structure (CREATE, DROP, etc....). Make sure you have stored procedures available on your installation.
2. Launch bedita init shell script
To initialize the system correctly, BEdita has a PHP script that you have to launch from the command line (a cake shell script, more precisely). Just go to the bedita directory above on the shell and type:
./cake.sh bedita init
(on Linux/Mac/*nix systems, on Windows use cake.bat
instead of ./cake.sh
). This script first checks your configuration, if it finds something wrong or not properly setup it will suggest you what to do. For instance if the database connection fails it will tell you which file to check and which variable to edit.
HINT: edit $default array in bedita-app/config/database.php, have a look at cakePHP documentation.
Don't worry!
There are just two files to edit, bedita-app/config/database.php
for the database connection (look at the CakePHP docs) and bedita-app/config/bedita.sys.php
where you have to define three fundamental variables for BEdita.
- the first one is
$config['mediaRoot']
that indicates a directory on your filesystem where BEdita will put any file uploaded (through a form) on the system. Verify that the webserver has the right permissions to read and write in this directory. - the second is
$config['mediaUrl']
that indicates the base URL from which you can reach the uploaded files. - the third is
$config['beditaUrl']
that indicates the base URL of your BEdita installation
Note: to define paths on filesystem you may use DS
as generic directory separator, it will be "/" oni *nix systems (Linux, McOSX,...) or "\" on Windows.
You can obviously have more complex configurations creating the media directory somewhere else defining a virtual host that points to it (recommended for production systems).
Once the system is correclty configured the script wil create and initialize the database. At last it will ask if you want to check the status of BEdita, just press y and you will receive a short summary of your configuration.
Be aware of the permissions on bedita-app/tmp directory that has to be recursively writable from your webserver.
Note: BEdita is based on CakePHP framework. CakePHP is built to work with mod_rewrite out of the box (http://book.cakephp.org/view/37/Apache-and-mod_...). If you want/can use it (recommended) check if it's enabled, otherwise if you want to configure CakePHP not to use mod_rewrite remove .htaccess
files in/bedita/.htaccess
/bedita/bedita-app/.htaccess
/bedita/bedita-app/webroot/.htaccess
And uncomment the App.baseUrl
in bedita/bedita-app/config/core.php
//Configure::write('App.baseUrl', env('SCRIPT_NAME'));
You can find more information in Handling mod_rewrite in BEdita and CakePhp
And now?
Open your browser and write on the address bar the location that points to your BEdita installation.
You will be redirected to the login page. Type bedita as username and also as password et voilà...have fun with BEdita!!
mediaRoot