I just test the new Drupal installation for 4.8, here my suggestions to improve this section:
1. The installation says: Database must exist on your server before Drupal can be installed.
huh? you better help users automatically create the database! so, we just type the database then Drupal create for us! This page does not ask me WHICH DB SERVER I would like to use! MySQL or PostgreSQL?
2. After point 1 succesful then I goto Drupal welcome page. Mean I must create sample content. Why not just install sample data for users? It's will be easier for users.
So, to provide better Web Based Installation you may need to follow this step by step:
1. user goto www.domain.com
2. show the checking page, such: checking user database server, php setting, file permission. Add a RECHECK button, because users may alter setting to MEET the checking page value
3. collect data for: database name, dba username, password, db location (usually localhost), and prefix. also important which DB Server we want? mysql or postgresql?
4. also collect username for ADMIN rights! and the password
5. automatic create: database and admin user
6. automatic install sample DATA for our new site!
7. now users see their website
8. Finish.
now... Drupal support web based installation perfectly!
Comments
Very good suggestions
Tomorrow, Sept. 1, the 4.8/5.0 branch of development is planned to go into code freeze, meaning no new features will be added. So these suggestions will necessarily have to wait until the development branch is opened up again, after the next release.
That means that you have a good opportunity to help build this thing into the system you're looking for. Find like minded developers who are keen on working on the install system. Find out exactly what needs to be coded to make this happen. Make mock-ups. Get opinions. Then, when the code has been written, submit a patch into the issue queue. Stick with it. Test it, listen to the feedback, work on improving it iteratively until the core committers for the next release are convinced. That is the process.
I don't think anyone would argue that Drupal couldn't be made easier to install. In fact, just about everybody would like it to be that way. Understanding how it can be made to happen is important.
Welcome to the project!
- Robert Douglass
-----
My Drupal book: Building Online Communities with Drupal, phpBB and WordPress
**I am helping a Honduras
**I am helping a Honduras school `drupalizing' and I almost got into instructing the webmaster to learn how to create MySQL database.
But just as I was doing it, Heine (thankx) linked to drupal-cvs.tar, and now I am trying it to see how. I have Drupal 469 and 473 installed MANUALLY (no problem), but this installer should help the Non-Profits and Schools to drupalize.
Without being a prick, I think there needs to be more instructional text - I offer to provide visual aid (screen caputre) to do this
*Drupal database setup
The following error must be resolved before you can continue the installation process:
The Drupal installer requires write permissions to ./sites/default/settings.php during the installation process.
----I know what it is, but the average webmaster will say `What the.....?'
****OK the second message - (after changing from 644 to 777 the settings.php)
Database configuration
Basic options
To set up your Drupal database, enter the following information.
Database name: *
The name of the mysql database your Drupal data will be stored in. It must exist on your server before Drupal can be installed.
Database username: *
Database password: *
Advanced options
These options are only necessary for some sites. If you're not sure what you should enter here, leave the default settings or check with your hosting provider.
Database host: *
If your database is located on a different server, change this.
Database prefix:
If more than one Drupal web site will be sharing this database, enter a table prefix for your Drupal site here.
==== This is confusing to a newbie - look like I still have to instruct the learner to create himself a MySQL
The following error must be resolved before you can continue the installation process:
We were able to connect to the MySQL database server (which means your username and password are valid) but not able to select your database. MySQL reports the following message: Access denied for user '***_****'@'localhost' to database '*****_****'.
* Are you sure you have the correct database name?
* Are you sure the database exists?
* Are you sure the username has permission to access the database?
For more help, see the Installation and upgrading handbook. If you are unsure what these terms mean you should probably contact your hosting provider.
========Past the hurdle - (newbies, you can ask me how to create a new MySQL database )
Drupal installation complete
All necessary changes to ./sites/default/settings.php have been made, so you should now remove write permissions to this file. Failure to remove write permissions to this file is a security risk.
Congratulations, Drupal has been successfully installed.
Please review the messages above before continuing on to your new site.
==========Open site, and CREATE FIRST ACCOUNT
Welcome to Drupal. You are user #1, which gives you full and immediate access. All future registrants will receive their passwords via e-mail, so please make sure your website e-mail address is set properly under the general settings on the site information settings page.
Your password is ******. You may change your password below.
==========Click ADMINISTER
-----Bravo!
Some shortcomings
image toolkit
No image toolkits found. Drupal will use PHP's built-in GD library for image handling.
**You still have to upload image.module - I thought that it will be nice to include it in Drupal installer ?
Opppsss - is this webhosting fault or what?
Warning: mysql_real_escape_string() expects parameter 2 to be resource, null given in /home/*/public_html/*/includes/database.mysql.inc on line 357
Warning: mysql_real_escape_string() expects parameter 2 to be resource, null given in /home/*/public_html/*/includes/database.mysql.inc on line 357
Warning: mysql_query(): supplied argument is not a valid MySQL-Link resource in /home/*/public_html/*/includes/database.mysql.inc on line 109
Warning: mysql_errno(): supplied argument is not a valid MySQL-Link resource in /home/*/public_html/*/includes/database.mysql.inc on line 124
Warning: Cannot modify header information - headers already sent by (output started at /home/drupalma/public_html/drupal48/includes/database.mysql.inc:357) in /home/*/public_html/*/includes/common.inc on line 138
Unable to connect to database server
***Edited to delete sensitive stuff :)
1. Every automatic
1. Every automatic installation system will require an already existing database as it won't have the permissions to create one for you and if it did its likely to be a high security issue.
If i install Vbulletin, phpbb, Subdreamer or countless others they are always expecting a database to be readily available.
Granted something like Fantastico will create a database for you but thats because its tied into Cpanel. I doubt Drupal will ever create a database for you.
2. The sample data you ask for is actually already included in Drupal. Its the page you see after you install Drupal saying to now create some data :)
Here the solution!
1. Not like that, using PHP script we can create a new database. What the installer need is a dba username or user with "Create Database" privileges. For security concern, I like to help how to avoid some security risk while using web based installation if needed, please don't hesitate email me for this problem solution.
I have some example scripts for:
- how to create new database using PHP
- how to avoid security risk using web based installation.
2. I like to avoid create the content, mean I like Drupal create the some contents for me, this is what I mean with sample data.
not on my host
My host will not allow any script to create a database. It all must be done through CPanel. Even PHPMyAdmin, run through CPanel, cannot create databases. This has been the case with several web hosts I have had over the years. They usually want to prepend some identifier of their own to the database name, too (like your username), to preclude the possibility of duplicate database names on shared servers.
I currently use Hostony.com
Just a thought...
- Corey
Instead of sample data you
Instead of sample data you are talking about, Drupal default has the INSTRUCTION to the new user/admin which will disappera once the first node is promoted to the front page
Instead of crap `Test news' etc like Mambo `sample data'
If you dont like the default instruction, or if you really want to put `sample data', why not you EDIT the NODE.module and change `Welcome to Drupal.....etc etc' to something you like, package it in `modules.zip' and distribute it to for whom it matters the most.
Like what we did for Malaysian organizations - packaged modules.zip around 900 KB to fit in a disket and as email atachment - then I uploaded them or instruct the webmasters to replace exisitng modules folder