Sai Gopal Wordpress Blog

saigopal wordpress blog

Saigopal's website

Saigopal's website

My Daughter Website

Weebly

Palwow

Freelance Jobs

Wednesday, March 31, 2010

good url i have seen

browse: forums | FAQ

* sign up
* login
new member:

Register
member login:

o User Name
o Password

lost password?

Connecting Tech Pros Worldwide

bytes > topic > php > answers
Hey there! Do you need PHP help?
Get answers from our community of PHP experts on BYTES! It's free.

Using header("Location:...". How to pass over array variable?
Automated Ajax Testing
Automated functional testing for Ajax/Web 2.0 applications-Free Eval
www.parasoft.com
Ads by Google
Dave Smithz
Guest

Posts: n/a
#1: Jul 17 '05
Hi there,

I have a php script that does some form input validation. As it verifies
each field if the field has incorrect data, it appends an error message to
an $error array. E.g.

if (an_error = true) {
$errors.="You have note entered a surname. This is mandatory date
of birth incorrectly.";
}

Previously I had always had the HTML error page code contained within the
same script, but now I am moving it out to make maintenance easier.

When validation completes there is now a statement that says
if ($errors!="") {
header("Location: ./error_page.php");
}

However, how can I pass the errors array to the error_page. I want to be
able to list each error individually.

Forgive me if this is a silly easy question. I have only been doing PHP for
about a week.
Thanks in advance.

Kind regards

Dave








Chris Hope
Guest

Posts: n/a
#2: Jul 17 '05
re: Using header("Location:...". How to pass over array variable?
"Dave Smithz" wrote:
[color=blue]
> I have a php script that does some form input validation. As it
> verifies each field if the field has incorrect data, it appends an
> error message to an $error array. E.g.
>
> if (an_error = true) {
> $errors.="You have note entered a surname. This is
> mandatory date
> of birth incorrectly.";
> }[/color]

This looks like a string not an array.
[color=blue]
> Previously I had always had the HTML error page code contained within
> the same script, but now I am moving it out to make maintenance
> easier.
>
> When validation completes there is now a statement that says
> if ($errors!="") {
> header("Location: ./error_page.php");
> }
>
> However, how can I pass the errors array to the error_page. I want to
> be able to list each error individually.
>
> Forgive me if this is a silly easy question. I have only been doing
> PHP for about a week.
> Thanks in advance.[/color]

Assuming it is actually an array, you can loop through it along the
lines of something like so:

$vars = '?';
for($i = 0; $i < sizeof($array); $i++) { $vars .= "array[]=" . urlencode($array[$i]) . '&'; } Then the receiving page will have an array $_GET['array'] filled with elements. If it's an associative array you can do this: $vars = '?'; foreach($array as $name => $value) {
$vars .= $name . '=' . urlencode($value) . '&';
}

You can also use the serialize and unserialize functions to turn the
array into a string which you would then use urlencode make it url
safe.

Functions in the manual online here:

http://www.php.net/urlencode
http://www.php.net/serialize
http://www.php.net/unserialize
http://www.php.net/foreach

--
Chris Hope - The Electric Toolbox - http://www.electrictoolbox.com/
Dave Smithz
Guest

Posts: n/a
#3: Jul 17 '05
re: Using header("Location:...". How to pass over array variable?

Thanks for that Chris. I did mean to put an array there.

Thanks for the info there, much appreciated.

Regards

Dave


micha
Guest

Posts: n/a
#4: Jul 17 '05
re: Using header("Location:...". How to pass over array variable?

Dave Smithz wrote:[color=blue]
> Hi there,
>
> I have a php script that does some form input validation. As it[/color]
verifies[color=blue]
> each field if the field has incorrect data, it appends an error[/color]
message to[color=blue]
> an $error array. E.g.
>
> if (an_error = true) {
> $errors.="You have note entered a surname. This is[/color]
mandatory date[color=blue]
> of birth incorrectly.";
> }
>
> Previously I had always had the HTML error page code contained within[/color]
the[color=blue]
> same script, but now I am moving it out to make maintenance easier.
>
> When validation completes there is now a statement that says
> if ($errors!="") {
> header("Location: ./error_page.php");
> }
>[/color]

header("Location: ./error_page.php?NAME=VALUE"); could be a way[color=blue]
> However, how can I pass the errors array to the error_page. I want to[/color]
be[color=blue]
> able to list each error individually.
>
> Forgive me if this is a silly easy question. I have only been doing[/color]
PHP for[color=blue]
> about a week.
> Thanks in advance.
>
> Kind regards
>
> Dave[/color]

LetsSurf
Guest

Posts: n/a
#5: Jul 17 '05
re: Using header("Location:...". How to pass over array variable?
Wouldn't it be easier to just serialise the array and pass it as a
value though get, then unseralise it.

Or even just include the error_page.php and pass it as a global and
then use the die() command to stop execution.

Erwin Moller
Guest

Posts: n/a
#6: Jul 17 '05
re: Using header("Location:...". How to pass over array variable?
micha wrote:
[color=blue]
> header("Location: ./error_page.php?NAME=VALUE"); could be a way[/color]

As I was told in this very group some weeks back (by you. :P) a
locationheader needs an absolute URL.

:-)

Regards,
Erwin Moller
Anonymous
Guest

Posts: n/a
#7: Jul 17 '05
re: Using header("Location:...". How to pass over array variable?
Erwin Moller wrote:[color=blue]
>
> micha wrote:
>[color=green]
> > header("Location: ./error_page.php?NAME=VALUE"); could be a way[/color]
>
> As I was told in this very group some weeks back (by you. :P) a
> locationheader needs an absolute URL.
>
> :-)[/color]

No, it doesn't.
Ewoud Dronkert
Guest

Posts: n/a
#8: Jul 17 '05
re: Using header("Location:...". How to pass over array variable?
On Wed, 02 Feb 2005 14:42:57 +0100, Erwin Moller wrote:[color=blue]
> locationheader needs an absolute URL.[/color]

Depends on the client, but yes.

To the OP: you could also use sessions. Put session_start() at the top
of both scripts, set $_SESSION['err'] = "My error message." in the first
one and echo $_SESSION['err'] in the second.


--
Firefox Web Browser - Rediscover the web - http://getffox.com/
Thunderbird E-mail and Newsgroups - http://gettbird.com/
Tim Van Wassenhove
Guest

Posts: n/a
#9: Jul 17 '05
re: Using header("Location:...". How to pass over array variable?
On 2005-02-02, Erwin Moller wrote:[color=blue]
> micha wrote:
>[color=green]
>> header("Location: ./error_page.php?NAME=VALUE"); could be a way[/color]
>
> As I was told in this very group some weeks back (by you. :P) a
> locationheader needs an absolute URL.[/color]

But now we have:
http://www.ietf.org/rfc/rfc3986.txt


--
Met vriendelijke groeten,
Tim Van Wassenhove
Michael Fesser
Guest

Posts: n/a
#10: Jul 17 '05
re: Using header("Location:...". How to pass over array variable?
.oO(Anonymous)
[color=blue]
>Erwin Moller wrote:[color=green]
>>
>> As I was told in this very group some weeks back (by you. :P) a
>> locationheader needs an absolute URL.
>>[/color]
>No, it doesn't.[/color]

It does.

RFC 2616, section 14.30

Micha
Chris Hope
Guest

Posts: n/a
#11: Jul 17 '05
re: Using header("Location:...". How to pass over array variable?
Michael Fesser wrote:
[color=blue][color=green][color=darkred]
>>> As I was told in this very group some weeks back (by you. :P) a
>>> locationheader needs an absolute URL.
>>>[/color]
>>No, it doesn't.[/color]
>
> It does.
>
> RFC 2616, section 14.30[/color]

And section 5 and the following subsections of RFC3986 deal with the
resolution of relative URIs. However, it was only published in January
2005 but I'm pretty sure all the browsers I have ever used since 1997
have supported relative URI redirection.

It is still probably best to have full URIs though, and it's easy enough
to do using the $_SERVER['HTTP_HOST'] variable in your location string.

--
Chris Hope - The Electric Toolbox - http://www.electrictoolbox.com/
Michael Fesser
Guest

Posts: n/a
#12: Jul 17 '05
re: Using header("Location:...". How to pass over array variable?
.oO(Chris Hope)
[color=blue]
>Michael Fesser wrote:
>[color=green]
>> RFC 2616, section 14.30[/color]
>
>And section 5 and the following subsections of RFC3986 deal with the
>resolution of relative URIs. However, it was only published in January
>2005 but I'm pretty sure all the browsers I have ever used since 1997
>have supported relative URI redirection.[/color]

The HTTP RFC clearly states that the Location URI has to be absolute.
IMHO a conforming user agent doesn't have to be able to resolve relative
URIs if he can expect an absolute one.
[color=blue]
>It is still probably best to have full URIs though, and it's easy enough
>to do using the $_SERVER['HTTP_HOST'] variable in your location string.[/color]

Agreed.

Micha
John Dunlop
Guest

Posts: n/a
#13: Jul 17 '05
re: Using header("Location:...". How to pass over array variable?
Tim Van Wassenhove wrote:
[color=blue]
> [Erwin Moller wrote:][/color]
[color=blue][color=green]
> > micha wrote:[/color][/color]
[color=blue][color=green][color=darkred]
> > > header("Location: ./error_page.php?NAME=VALUE")[/color]
> >
> > As I was told in this very group some weeks back (by you. :P)[/color][/color]

One of us is getting our Michas confused!
[color=blue][color=green]
> > a locationheader needs an absolute URL.[/color][/color]

Quite true here.
[color=blue]
> But now we have:
> http://www.ietf.org/rfc/rfc3986.txt[/color]

But that doesn't change RFC2616, which requires that HTTP
Location headers consist of a single absolute URI. HTTP/1.1
delegates the definition of 'absoluteURI' to RFC2396, now
obsoleted by RFC3986. By looking at Appendix D.2 of the new
RFC, you can see that the 'absoluteURI' rule from RFC2396 is
equivalent to the 'absolute-URI' rule of RFC3986. The only
real difference I spotted between the two is that now the
path component can be empty.

http://www.ietf.org/rfc/rfc2396.txt
http://www.ietf.org/rfc/rfc3986.txt

Mind you, that's all a bit irrelevant. The HTTP/1.1 errata
corrects the definition of Location by allowing a fragment
identifier, and provides a new ABNF rule:

Location = "Location" ":" absoluteURI [ "#" fragment ]

http://skrb.org/ietf/http_errata.htm...tion-fragments

So, to sum up, under the new RFC3986 and by taking into
account the HTTP/1.1 errata, an HTTP Location header
effectively consists of a single *URI*:

URI = scheme ":" hier-part [ "?" query ] [ "#" fragment ]

--
Jock
Anonymous
Guest

Posts: n/a
#14: Jul 17 '05
re: Using header("Location:...". How to pass over array variable?
Michael Fesser wrote:[color=blue]
>
> .oO(Anonymous)
>[color=green]
> >Erwin Moller wrote:[color=darkred]
> >>
> >> As I was told in this very group some weeks back (by you. :P) a
> >> locationheader needs an absolute URL.
> >>[/color]
> >No, it doesn't.[/color]
>
> It does.
>
> RFC 2616, section 14.30[/color]

[readin it up]

Interesting. You are right, according to the RFC it does.

It also works relative, however.
Used Cold Headers
National, Asahi-Sunac, WF, Sacma Worlds Largest Selection, Buy Now
www.haritonmachinery.com
Ads by Google
Closed Thread

« previous question | next question »


Similar PHP bytes

* session does not propagate after header("Location: page.php") (answers)
* what is better : readfile, fpassthru, or header(" Location: ...")? (answers)
* header("Location: ..."); NOT WORKING!? (answers)
* header("Location:...") question (answers)


/bytes/development

* algorithms
* asp
* asp.net
* c / c++
* coldfusion
* c#
* flash
* html/css
* java
* javascript
* mobile dev
* .net
* perl
* php
* python
* ruby
* software dev
* vb.net
* visual basic
* xaml / wpf
* xml

/bytes/it

* access
* apache
* careers
* cms
* db2
* iis
* macosx
* mysql
* networking
* oracle
* postgresql
* sql server
* unix
* windows

/bytes/other

* misc

Forums
Visit our community forums for general discussions and latest on Bytes
/bytes/about

We are a network of experts and professionals in IT and software development that help one another with answers to tough questions and share insights. Get the best answers to your questions from over 232,677 network members.
dev questions:
algorithms | asp | asp.net | c/c++ | coldfusion | c# | flash | html/css | java | javascript |
mobile dev | .net | perl | php | python | ruby | software dev | vb.net | visual basic | xml
it questions:
access | apache | careers | db2 | iis | macosx | mysql | networking | oracle | postgresql | sql server | unix | windows

Copyright 1995-2010 BYTES. All rights Reserved About Bytes | Help | Site Map
Bytes Expert Network: 232,677 Members (2260 Online)
LinkBack
LinkBack URL LinkBack URL
About LinkBacks About LinkBacks

Monday, March 15, 2010

My Wife passed HTML 4.01 Test from ODESK

My Wife passed HTML 4.01 Test from ODESK
She became now html 4.01 odesk certified professional
oDesk Certified HTML 4.01 Designer

Sunday, March 14, 2010

html








Mailer
Mailer in new window
dd
td A piece of text contains many blank spaces within it. which of the following tags would be suitable to display the text as it was originally formatted
td A piece of text contains many blank spaces within it. which of the following tags would be suitable to display the text as it was originally formatted

p A piece of text contains many blank spaces within it. which of the following tags would be suitable to display the text as it was originally formatted

ls A piece of text contains many blank spaces within it. which of the following tags would be suitable to display the text as it was originally formatted
Pre A piece of text contains many blank spaces within it. which of the following tags would be suitable to display the text as it was originally formatted




Text should go in opposite direction

Text should go in opposite direction

Text should go in opposite direction
Text should go in opposite direction
dd
td A piece of text contains many blank spaces within it. which of the following tags would be suitable to display the text as it was originally formatted
td A piece of text contains many blank spaces within it. which of the following tags would be suitable to display the text as it was originally formatted






Yahoo
Google

mini player mp3 for your Blog

miniplayer mp3

Friday, March 12, 2010

Installing and configuring Apache on Windows XP

If you design websites you might want to install a web server on your computer in order to test your sites in an environment that matches the real thing as close as possible. This article describes how to install and configure the open-source Apache HTTP (web) server and how to make it work with not one site but as many as you require using a technique called name-based virtual hosting.
Plan before you start: folders

Planning a good folder structure for organizing your websites is important. Assuming that you have your own company, I recommend to create a "My Company" folder in your "My Documents" folder. Instead of "My Company" you might want to use the real name of your company. Next, create in the "My Company" folder for example the following sub-folders: "Customers" and "My Sites". The latter can be used to store sites that belong to your company.
Example folder structure for local websites.
Example folder structure for local websites.

Next, create a folder for each customer under the Customer folder. Use for example the name of the company or the name of the customer to name this folder. Then for each customer create a folder with the same name as the domain of that customer.

Inside each domain folder, create a folder named "site" which will be used to store a local copy of all the folders and files that are also on the (remote) web server connected to the Internet. Try to keep files that shouldn't be on the actual web server outside of this folder in order to use it to update the remote server without too much of a hassle.

For example the site folder I have contains the following folders: cgi, logs, and web. They are named thus because that's the name they have on the server that hosts my website.

The folder named "web" is the document root, in my case, meaning that documents and folders in this folder appear at the top level of the domain. For example, if this folder contains a file "example.html" it will be accessible as http://example.com/example.html assuming that the domain is example.com.

Tip: example.com is a domain name which is reserved for examples (what's in a name). If you need a domain name for an example don't make up your own domain name but always use example.com.

Note that the cgi directory (cgi-bin) is outside the document root folder in the file system, which is a good thing (This will be explained in an upcoming article).
Downloading the Apache web server

The Apache web server is available in three different series: 1.3, 2.0, and 2.2. Since 2.0 is recommended over 1.3 for running on Windows XP, and software like PHP as far as I know don't support 2.2 yet, I decided to install the latest 2.0.x version which is 2.0.59 at this time of writing.

Go to the Apache HTTP server download page and select the series you want to use (either 1.3 or 2.0) and download the Win32 binary. In my case I downloaded apache_2.0.59-win32-x86-no_ssl.msi.
Downloading the Apache Win32 MSI installer.
Downloading the Apache Win32 MSI installer.

After you have downloaded the MSI file compare the MD5 signature with the value published on the Apache website. Note: I am working on an explanation on how to do this, for now read the instructions on the Apache HTTP server download page.
Installing the Apache web server

If you set up your day-to-day account properly on Windows XP you are working as a limited user. For installation of the Apache HTTP server you need to have Administrator rights. So go to the Windows XP Login screen by pressing the Windows key (between the left Ctrl and left Alt on most keyboards) and the L key together.

When started, the Apache HTTP server installation wizard displays a welcome message. Click on the Next button to continue. Next, the Apache license is shown. Read it carefully and if you accept the license, select the "I accept the terms in the license agreement" option and press the Next button.

Next a "Read This First" document is displayed. Read it carefully before pressing the Next button.
Apache HTTP server information
Apache HTTP server information

Next, you can enter your server information. Since I don't need other computers on the local network to be able to contact the web server I used localhost. If you have a local network, and want other computers to be able to contact the computer, make sure you use the right settings. If you don't know which option you want, use localhost for now, since you can always change the configuration settings later on in the configuration file of the Apache web server.

I recommend to run the Apache HTTP server as a service. This way it is always running and you don't need to start it manually. If you consider manually start and stop because of security issues, then reconsider and use a firewall, preferable one running on an external device like a router.

The next step allows you to select the install type of the Apache web server. The default (Typical program features) is probably right for your situation, so press Next.

Next, you can select the destination folder of the installation. Unless you prefer to use a different folder for some or all of the software you install, I recommend to use the default setting: C:\Program Files\Apache Group\

Finally, after clicking on the Next button you can start the actual installation by pressing the Install button. A few windows pop up and go automatically, and then a Windows Security Alert window appears asking if you want to keep blocking this (Apache HTTP server) program.
Windows Security Alert for the Apache HTTP server.
Windows Security Alert for the Apache HTTP server.

Since I don't want to make the web server available on the network I selected the Keep Blocking option. Note that you can always change this into Unblock later in case you decide to make the Apache HTTP server available on your network. After selecting a button in the Windows Security Alter dialogue window the window closes itself and the Apache HTTP Server 2.0 Installation Wizard reports that the Apache HTTP server has been installed successfully. Click the Finished button to close the HTTP server installation wizard.
Testing the Apache HTTP server installation

In order to test your Apache web server installation, open a browser and enter http://localhost/ into the address bar (unless you used a different value then localhost in the Apache server information step). The Test Page for Apache installation should be displayed into your browser.
Part of the Apache HTTP server test page in Mozilla Firefox
Part of the Apache HTTP server test page in Mozilla Firefox

If you don't get the test page it might be that the Apache web server was not able to start for some reason, check the error.log file in the logs folder of the web server (see the next section).
Understanding the Apache server folder structure

It is important to understand some part of the Apache HTTP server folder structure, or where is what located. I won't describe each and every item, but just mention the important ones:
Apache folder structure
Apache folder structure
The bin folder

The bin folder contains amongst other files the server executable: Apache.exe and a program to control the Apache HTTP server when ran as service: ApacheMonitor.exe. Also contained in this folder are htpasswd.exe and htdigest.exe for making parts of your site(s) restricted.
The cgi-bin folder

The cgi-bin folder has one CGI program written in Perl, printenv.pl, which you can use to test if your Perl installation is working in combination with the Apache HTTP server. If you get a "500 Internal Server Error" when you enter http://localhost/cgi-bin/printenv.pl in the address bar of your browser, you either have Perl not installed, or the configuration of the web server is not right. You might want to check the error.log file in the logs folder in the latter case.
The conf folder

This folder holds the configuration files used by the Apache web server. Of each file used by the server there is a copy which has .default in its name, e.g. httpd.default.conf. The access.conf and srm.conf files are empty (except for comments) by default, and I recommend to not use those files for configuring the server. The httpd.conf file has already been updated by the installation process. I list some of those modified settings below, including a short description and the line number (which might differ with your version).

* Listen 80 - The port the Apache server is using. If you have already a web server running, for example as part of Microsoft Internet Information Services (IIS), you might want to change the number to something different (line 120).
* ServerAdmin admin@localhost - The email address of the server administrator, which is used on, for example, error pages generated by the server (line 198).
* ServerName localhost:80 - The hostname and port the server uses (line 212).

Some of the other settings are omitted since they will be overridden by the name-based virtual hosting set up discussed below.
htdocs

This folder contains the default HTML page you see when you visit http://localhost/ with your web browser. Don't start adding your HTML documents and related files to this folder, but read on.
manual

This folder contains the Apache HTTP server documentation, available as http://localhost/manual/. Note that this folder shows up under the document root thanks to the AliasMatch directive in the httpd.conf server configuration file (line 491).
logs

This folder contains (amongst others) the access.log and error.log files. If anything goes wrong, for example the notorious 500 Internal Server Error, make sure that you check the error.log file. With virtual hosting you can give each site its own log file (discussed below), so be sure to check the right file(s).
Setting up virtual Hosting

To make the configuration of virtual hosts as easy as possible I decided to store the configuration settings into a separate file instead of adding those settings to the Apache server configuration file httpd.conf.

Login to the computer with Administrator rights, and create an empty file named virtual-hosts.conf inside the conf folder of the Apache HTTP server. The default location of this folder after installation is C:\Program Files\Apache Group\Apache2\conf\.

Note: in an earlier version of this article I stored the virtual hosts file inside a folder with limted user rights which implied that this file has the same rights. Since this file is interpreted by the Apache web server this is a security risk if this limited user account is compromised.
Adding the domains to the hosts file

For each website you want to have running locally you have to think up a domain name with great care. I use the same domain name as the real site with lc. added to the front (hence a subdomain) since I am very sure that this subdomain isn't used on the Internet in my case.

Add each domain name to the hosts file used by Windows XP, which is located in the C:\WINDOWS\system32\drivers\etc folder for a default installation. An example configuration might be (comments on top not included for brevity):

127.0.0.1 localhost

127.0.0.1 lc.johnbokma.com # my personal site
127.0.0.1 lc.castleamber.com # my company's site

Note that everything after the # character is regarded as a comment. You can use this to add useful comments. The IP address, 127.0.0.1, means "this computer" (localhost). If you want to use the web server in a local network, you have to use an IP address that can be contacted by other computers in the network. Also, you either have to modify all hosts files on each and every computer, or set up a name server.
Including the virtual-hosts.conf file

Add the following line to the end of the httpd.conf file in the C:\Program Files\Apache Group\Apache2\conf folder in order to include the virtual-hosts.conf file and make it part of the configuration of the web server:

Include conf/virtual-hosts.conf

Since the ServerRoot in the default install is set to the folder that contains the conf folder we can use the short relative notation as given above. Note: where filenames are specified, you must use forward slashes instead of backslashes (e.g. conf/virtual-hosts.conf instead of conf\virtual-hosts.conf).
Further reading (Apache 2.0 series)

* Syntax of configuration files
* The Include directive

Stopping and starting Apache

After changes have been made to the httpd.conf file and/or the virtual-hosts file, Apache has to be restarted. If you are logged in with Administrator rights the easiest way to do this is by using the Apache monitor which is started when you log in and available via the system tray. Click the right mouse (context menu) button on the red feather icon in the system tray and select the Open Apache Monitor menu entry. You can restart the Apache HTTP server with a single mouse click on the Restart button.
The Apache service monitor.
The Apache service monitor.

Note that during installation of the Apache web server a short cut to the Apache service monitor is created in the Startup folder of "All Users" (i.e. C:\Documents and Settings\All Users\Start Menu\Programs\Startup) which is quite useless. Users with limited access rights are not able to control the Apache service but will get the Apache monitor running in their system tray anyway. You might want to move the short cut to the Startup folder of a user with Administrator rights.

Another way to restart Apache is by entering in a command prompt window NET STOP APACHE2 followed by enter, followed by NET START APACHE2 to stop and start the Apache service:

NET STOP APACHE2
The Apache2 service is stopping.
The Apache2 service was stopped successfully.


NET START APACHE2
The Apache2 service is starting.
The Apache2 service was started successfully

Note that this only works if the command prompt has Administrator rights. As a limited user open the "Accessories" of the "All Programs" menu in the Start menu. Place the mouse pointer on top of the Command Prompt entry, press the right (context menu) mouse button, and select the "Run As..." option. In the "Run as" dialog window switch to "The following user" and select a user with Administrator rights from the drop down menu and enter the password for the selected user. In a similar manner a user with limited rights can run ApacheMonitor.exe located in C:\Program Files\Apache Group\Apache2\bin. However, most of the time switching to an account with Administrator rights is more convenient.

If starting the Apache HTTP server fails, for example:

NET START APACHE2
The Apache2 service is starting.
The Apache2 service could not be started.

A service specific error occurred: 1.

More help is available by typing NET HELPMSG 3547.

don't panic but read the next section on troubleshooting the Apache HTTP server.
Troubleshooting the Apache web server after changing configuration settings

If the Apache web server can't be started after a change to a configuration file, open a command prompt (you don't need Administrator rights), change the working directory to the Apache bin directory, and run apache.exe with the -t option:

cd "C:\Program Files\Apache Group\Apache2\bin"
C:\Program Files\Apache Group\Apache2\bin>apache -t
apache: could not open document config file C:/Program Files/Apache Group/Apache
2/conf/virtual-host.conf

In the above case I made (on purpose) a spelling mistake in the virtual-hosts.conf filename after the Include directive in httpd.conf.

Fix the problem reported, and run apache.exe again with the -t option. If the program reports that the syntax is ok:

C:\Program Files\Apache Group\Apache2\bin>apache -t
Syntax OK

try to start the Apache service again using NET START APACHE2 or use the Apache service monitor (in both cases Administrator rights are required).

Tip: you might want to study some of the other apache.exe command line options. Use apache -h to get an overview. For example the option -S shows the virtual host settings, see the next section.
Adding virtual hosts

After adding the Include directive to Apache's httpd.conf you can add and remove virtual hosts to the virtual-hosts.conf. Note that if you add new ones you have to update the hosts file as well.

Since the virtual-hosts.conf file is empty at this point, lets add the first name-based virtual host:

# Use name-based virtual hosting.
NameVirtualHost *:80



ServerName lc.johnbokma.com
DocumentRoot "C:/.../My Company/My Sites/johnbokma.com/site/web"

CustomLog logs/lc.johnbokma.com.access.log combined
ErrorLog logs/lc.johnbokma.com.error.log



Note that I replaced a part of the DocumentRoot path with three dots (...) in order to keep the line short. Make sure that you use the full path in your virtual-hosts.conf file. Moreover, each backslash should be replaced with a forward slash. Also note that the DocumentRoot directory (web) doesn't end with a slash at all.

With the above set up both the error log and the access log are written by the web server inside the logs folder, a sub folder of the folder defined by the ServerRoot directive. For each virtual host you should use a unique name for each log file so you are able to distinguish between them and find possible problems sooner. I decided to use the domain name as a prefix for each type of log file. Also, for the access log I specified the combined log format. This is the common format with two additional fields: the Referer ("previous page") and User Agent (which browser was used to make the request).

The NameVirtualHost directive is only required once, so put it at the start of the virtual-hosts.conf file. Also note that the first VirtualHost entry is the default, meaning if you go to http://localhost/ you will see the index page of the first virtual host. You might want to set up a special first entry to being able to distinguish between http://localhost/ and the first "real" virtual host.

For each virtual host, copy the virtual host section (..), change the domain name after the ServerName directive, and change the path for DocumentRoot and the filenames for ErrorLog and CustomLog.

With apache -S (capital S) on the command line (see previous section) you can get a report of your virtual host settings.
Further reading (Apache 2.0 series)

* NameVirtualHost directive
* directive
* ServerName directive
* DocumentRoot directive
* ErrorLog directive
* CustomLog directive
* LogFormat directive
* Apache HTTP Server Log Files

Testing name-based virtual hosting

If you visit one of your virtual sites with a browser you get a "403 Forbidden" error, unless you already put an index.html (or any other file the Apache web server can fall back upon) inside the document root of the virtual site, since the default for the Apache HTTP server is not to allow the listing of directory contents.

You might want to copy the following simple HTML into an index.html file for testing purposes:

You might want to replace all 3 occurrences of lc.johnbokma.com with the host name of your virtual server, or something else.

Another option is to visit /manual/ of your local site, for example http://example.com/manual/. Since the default configuration of the Apache HTTP web server makes the manual available via an alias (see also end of this article).

Make sure to check the access and error logs of each virtual host. Are new lines added when requests are made by the browser? If you have no favicon.ico file in the document root you will see attempts of your browser to access it in the access log of the virtual host and a failure message in the corresponding error log.
Further reading

* Favicon - Wikipedia entry

Removing /manual/, /icon/, and /cgi-bin/ aliases

The Apache web server comes default with three aliases defined, which also show up for each virtual host. Moreover, they can mask a directory in your document root if it has the same name.

You might want to comment out line 477-484 ( Alias /icons/ up until and including ), line 491-505 (AliasMatch ^/manual... up until and including ), and line 515-526 (ScriptAlias /cgi-bin/ up until and including ).
Further reading (Apache 2.0 series)

* Alias directive
* AliasMatch directive
* ScriptAlias directive

Afterword

I have plans to add two tutorials soon: "Installing PHP", and "Using CGI Perl scripts" so stay tuned. Also some links have to be added to this page, and some additional "troubleshooting" help.
Was this article helpful to you? Want to say thank you and support this site? Please check out my my Amazon wish list.

Configuring Virtual host in Apache in Windows

Configuring Virtual host in Apache in Windows

Configuring a Virtual host in Apache in windows needs just two step.
First one: configure the apache
Second one: configure the DNS in windows.
First One:
The first file we’ll need to edit is the Apache httpd.conf file. Start your text editor and open the file. It will be in a sub-folder named conf of your Apache folder. For example, mine is here:
C:\Program Files\Apache\conf\httpd.conf
Now, for this example, we’ll assume that you have your web sites located in a folder on your C drive. Each web site has a sub-folder of its own under that folder, like this:
C:\test
We’re going to set up virtual hosts for those the site using the domain name test.local. That way, you’ll be able to tell at a glance whether you’re looking at the live site, or your testing site.
In reality, you can call the domain anything you want. You could just as easily name them test.com or test.net. I choose to use the convention of using the same domain name along with the .local TLD to simplify and minimize the typing needed to switch between the live site and the testing site. The only important point, and it’s really important, is that you NEVER use an actual, real, live domain name. If you used, for example, test.com for the local virtual host, you would never be able to actually reach the live site. All requests for the live site would be re-directed to your local virtual host.
Go to the very bottom of your httpd.conf file in your text editor. You should see an example of a virtual host there. Each line of that example will begin with an octothorpe (#). The octothorpe character marks the line as a comment, so the example is not executed. Add the following lines below that example:
NameVirtualHost 127.0.0.1


   DocumentRoot "C:\test"
   ServerName test.local
That’s all you need to do! Save and close the file. That will tell the Apache server everything it needs to know in order for it to serve the pages using the domain names test.local.
Second Change:
Obviously, if you typed http://test.local in your browser, it would not be found by your Internet provider’s DNS server. We’re next going to edit another file to work around that. The second file you need to edit is called hosts, with no file extension. It is a Windows system file and it will enable you to enter specific addresses for specific domains instead of using a DNS lookup. The normal location for this file is:
C:\WINNT\system32\drivers\etc\hosts
If you don’t find it there, do a search in your windows directory for the word hosts in the file name. The file you want is called hosts, with no file extension. The correct file will begin with the following lines:
# Copyright (c) 1993-1999 Microsoft Corp.
#
# This is a sample HOSTS file used by Microsoft TCP/IP for Windows.
Once again, in this file, the octothorpe character is a comment marker. Lines beginning with it are comments. In all likelihood, there will be nothing there, except for comments. If there are any other non-commented entries, leave them alone. Just go to the bottom of the file, below all the comments and any existing entries and add the following two lines:
127.0.0.1 test.local
That’s all you need to do there. Save and close the hosts file.
Lastly :
You’re almost done! The only remaining thing you need to do is to re-start the Apache server. You need to do this because Apache only reads the configuration file when it first starts up
Hope this will work for you.

2 Comments »

  1. [...] post by Tapos Pal Share and Enjoy: These icons link to social bookmarking sites where readers can share and [...]
  2. [...] Virtual host confguration in Linux (Ubuntu) Some days ago I have posted how to configure apache virtual host in windows. You can find it here. Now I will describe how to configure virtual host in Linux. It’s all [...]

Andyjarrett.com. ColdFusion developer and general beta whore. If it moves on the web i'll try and consume it Setting up and using windows HOST file

Setting up and using windows HOST file

Host files used in windows to describe many-to-one mapping of device names to IP addresses. Using this file is helpful when developing locally as it allows you to assign the URL of the site to a local IP.
First, find you host file:
Windows NT/2000/XP Pro c:\winnt\system32\drivers\etc\hosts
Windows XP Home c:\windows\system32\drivers\etc\hosts

The HOST file doesn't have an extention and can be opened with notepad.
** Before we go any further make sure you back this up - just in case *** You should see something like:
   view plainprintabout
 ......
 # Additionally, comments (such as these) may be inserted on individual
 # lines or following the machine name denoted by a '#' symbol.
 # For example:
 # 102.54.94.97 rhino.acme.com # source server
 # 38.25.63.10 x.acme.com # x client host

 127.0.0.1    localhost
As with SQL '#' mean comments, so the only active line there is
   view plainprintabout
 127.0.0.1    localhost
What does that mean. Well everytime you access localhost (like in a browser, or PING'd from a command line) you are acutally accessing the IP address 127.0.0.1. So lets say i'm developing a new blog. In Apache (or any web server) i'd set up the IP address 127.0.0.2 to look at my document root. Then in the HOST file i'd have
   view plainprintabout
 127.0.0.2    www2.andyjarrett.co.uk
Alternatively I could just point the host to 127.0.0.1 instead of setting up a new IP. What you cannot do is map to a IP and port i.e. 127.0.0.1:8080
By the way, if you're wondering why i've changed the URL to have www2 as the prefix? It's that the HOST file is used first when going to a domain. For example try out the following
   view plainprintabout
 127.0.0.1    www.google.co.uk
then goto www.google.co.uk.
N.B. If you use a proxy then you will need to bypass the proxy server for local addresses

work locally with apache and virtual hosts

Work locally with Apache and virtual hosts

Tuesday, 04 March 2008
Most web developers and template creators need to have multiple sites on their local computer that can be accessed any time without modifying apache configuration variables. The easy solution is each site to be in a www root folder sub-directory and access that site like that: http://www.elxis.org/siteA/. Here we will show you how you can easily create virtual hosts on a windows machine to run multiple sites simultaneous each one having its own domain (http://siteA.tld). What we are going to show you applies to everything, not only Elxis CMS. It is also valid for XAMPP. By the way, we advise you not to use XAMPP but install seperately apache, mysql/postgresql and PHP instead. It will help you to understand better how a real web enviroment works. In this guide we will show you the general method of creating virtual hosts that can also be applied to XAMPP.

Locating needed files

For this guide we need to edit 3 files:
1. The Apache configuration file (httpd.conf).
This file is located inside the Apache's installation directory. Example path from my local computer:

C:/Program Files/Apache Software Foundation/Apache2.2/conf/httpd.conf

The above path may vary depending on the location of the windows installation drive on your computer and the apache version.
If you use XAMPP this file should be located inside the XAMPP installation directory. If you can nt find it use search.
2. The Apache Virtual hosts configuration file (httpd-vhosts.conf)
This file is located inside the Apache's installation directory. Example path from my local computer:

C:/Program Files/Apache Software Foundation/Apache2.2/conf/extra/httpd-vhosts.conf

The above path as well as the configuration file name may vary depending on the location of the windows installation drive on your computer and the apache version.
I think XAMPP by default adds virtual hosts inside the httpd.conf file. Sorry, I have never used XAMPP, I have just seen it 2-3 times.
3. Windows hosts file (hosts)
This is a file with no extension hidden inside the windows/system32/drivers/etc/ folder. It contains a list of the system hosts (normally only localhost). Example path for my local computer:

C:/windows/system32/drivers/etc/hosts

Notice: This guide is for Windows 2000/XP/Vista.

Examine your www root folder

Foreach one of you sub-folders/sites inside your www root folder we will create a virtual host. Go to your www root folder where you have your local sites. This by default is:
C:/Program Files/Apache Software Foundation/Apache2.2/htdocs

Or a htdocs folder inside the XAMPP installation directory or any custom path you have set in httpd.conf as DocumentRoot.

In this folder you will have a directory structure like this:
siteA (folder where site A is located in)
siteB (folder where site B is located in)
etc....

For consistency we will use these folder names as domain names.

Add virtual hosts to Apache

Open Apache's Virtual hosts configuration file (httpd-vhosts.conf) with a text editor such as notepad, editpad, pspad etc. Make sure everything is commented by adding a sharp symbol (#) in front of each line. Everything pre-existing there are just samples. First of all write:

NameVirtualHost *:80
 
 
     DocumentRoot "F:/myweb"
     ServerName localhost
 

Where you should replace the F:/myweb (my local DocumentRoot) with the path of your www root folder (normally camed as htdocs).

Now, for each one of your sites (the sub-directories we talked about previously) create an entry like this:

     DocumentRoot "F:/myweb/elxis"
     ServerName elxis.loc
 

When finish your httpd-vhosts.conf file should look like this:

NameVirtualHost *:80

 
     DocumentRoot "F:/myweb"
     ServerName localhost
 
 
 
     DocumentRoot "F:/myweb/elxis"
     ServerName elxis.loc
 
 
 
     DocumentRoot "F:/myweb/elxis2008"
     ServerName elxis2008.loc
 
 
 
     DocumentRoot "F:/myweb/myblog"
     ServerName myblog.loc
 
etc...

Notice that for consistency we used folder names as domain names, you can change this if you wish. We also used the loc as a pseudo-TLD *. You can use anything you wish but we advise you not to use a real one (like com, net, org, gr, fr, etc).

* TLD: Top Level Domain

Prepare Apache to handle virtual hosts

Now that our virtual hosts file is ready we must tell apache to use that file. Open Apache's configuration file (httpd.conf) with a text editor. Locate the line saying about where Virtual hosts file is located in (somewhere in the bottom of the document). If this line does not exist add it!

# Virtual hosts
# Include conf/extra/httpd-vhosts.conf
Uncomment the second line in order to tell apache to include our virtual hosts file:

# Virtual hosts
Include conf/extra/httpd-vhosts.conf

Add virtual hosts to Windows

Open Windows's hosts file (hosts) with a text editor. Inside it you will find a line like this:

127.0.0.1    localhost
Add bellow this line:
127.0.0.1    loc

Finally add all the virtual hosts you created at Apache:
127.0.0.1    elxis.loc
 127.0.0.1    elxis2008.loc
 127.0.0.1    myblog.loc
etc...
Your Widnows hosts file is ready. Save it. Restart Apache. If needed restart Windows.
Now you can access all of your local sites like this:

http://elxis.loc
http://elxis2008.loc
http://myblog.loc


No more sub-directories and ugly urls :-)
Notice: Don't forget to edit your Elxis configuration.php file(s) and change $mosConfig_live_site URL to the new one(s).

Sunday, March 7, 2010

i am a certified php4 developer of odesk now

oDesk Certified PHP4 Developer

Samsung N128: Review

Samsung finally manages to gate-crash into the netbook party with the introduction of their impressive netbook lineup in the middle of a market already dominated by majors such as Acer, Asus, Lenovo, Dell etc. Surprisingly affordable, these ultraportable laptops have become popular travel companions for people who do not want to drag a heavy notebook to presentations!

Their latest and the most affordable offering, the 10-inch Samsung N128 offers a great balance of features at a starting price of INR 13, 500 (equates to less than 300 USD!). So, is the Samsung N128 the most affordable netbook in the market ? Will it prove to be a worthy contender to the other netbooks? Is this netbook the one you've been waiting for? Read on to find out!

Specifications:

Processor: Intel Atom N270 @ 1.60GHz

Memory: 1GB DDR2 SDRAM @ 533MHz

Internal storage: 160GB 5400rpm SATA HDD

Display: 10.1 inch LED backlit WSVGA panel (1024 x 600)

Graphics: Intel GMA 950

Wireless: 802.11 b/g

Expansion: 3-in-1 media card slot (SD, SDHC, MMC)

Ports & connectors: 3 USB 2.0 ports, VGA out, DC power-in, RJ-45/Ethernet (10/100), Stereo headphone/line out, Stereo microphone in, VGA webcam, Kensington lock port.

Dimensions (H x W x D): 28.5mm x 185.5mm x 263.8mm

Weight: 1.25kg (not including the weight of AC adapter)

Power: 6-cell Li-ion battery (4000mAh, 44Wh)

Warranty: 1 year standard International warranty

OS: DOS

php question

php question

Thursday, March 4, 2010

Sony PS3 Slim 250GB Console

Sony PS3 Slim 250GB UC2 Bundle -- 20,750 Shipped

Location: Pune, Maharashtra

It Only Does Everything™

Boasting blistering processing speeds and eye-popping graphics, the PlayStation®3 will change the way you think about gaming. In addition to an ever-growing catalog of games, the PS3™ features the Cell Broadband Engine™, integrated Blu-ray Disc™ player and 250GB hard disk drive to deliver the ultimate high-definition entertainment experience.



It Only Does Everything™
While the form factor may have changed, the new slimmer and lighter PlayStation®3 250GB system still comes with free PlayStation®Network membership, integrated Wi-Fi and 250GB of hard disk drive storage for your games, music, videos and photos. Plus, every PS3™ system comes with a built-in Blu-ray Disc™ player to give you pristine picture quality and the best high-definition viewing experience available. Whether it's gaming, Blu-ray movies, CDs, DVDs, music or online services, you can experience it all with the PlayStation®3 system.
Note: This model will not play PlayStation® 2 games, but is backwards compatible with select PS one™ games.

Did you know?
PlayStation®3 and PSP® play nice together. Easily exchange media like photos, videos and music from your PlayStation®3 system to your PSP® system. Plus, get ready to witness an explosion in creativity as developers take on the challenge of integrating the PSP system into PlayStation®3 games.
Not all video and audio formats may be supported.
** Online connectivity requires broadband internet service and network devices such as a DSL or cable modem.
Video output in HD requires cables and an HD-compatible display, both sold separately. Full HD 1080p requires an HDMI cable and a 1080p native display with an HDMI input supporting HDCP. Copy-protected Blu-ray video discs can only output at 1080p using an HDMI cable connected to a device that is compatible with the HDCP standard.



What's in The Box:

* New slimmer and lighter PS3 system with a 250 GB HDD, Internet-ready built-in Wi-Fi, 2 USB ports and HDMI + Bravia Synch output for 1080p resolution and connectivity between other Sony HDMI products.
* Dualshock 3 wireless controller.
* AC power cord, AV cable and USB cable.
* Uncharted 2 Game Disc

Launch Date: December Last Week Tentatively
MRP: Rs 22,490 (Tentative)
Pre-Order Price: Rs 20,750 Shipped.
Pre-Order Closing Date: December 24th. Please clear your payments before this date.

interested can view this link

Conclusion

Conclusion:

The Samsung N128 offers a great value for a netbook priced at 13,500 INR. The netbook uses a well laid out keyboard & touchpad, a matte LED backlit display and best of all, a 6-cell battery - something which's left me a little more than impressed! Samsung's late entry into an already crowded netbook market has proved beneficial for the curious onlookers. I'm sure quite a few of them should have already owned this netbook by the time this review's done!

If you're looking for something you need to make a travel companion with or make presentations to your customers or catch a trailer or watch a video on Youtube, look no further - grab a Samsung N128 right away!

Pros:

* Low Price
* Excellent build quality
* Matte display
* 6-cell Li-ion battery
* Well laid out keyboard


Cons:

* No bluetooth
* VGA camera

That concludes review on the Samsung N128 ultraportable netbook. Brickbats, comments and queries are welcome!

This Article taken from Click Here

Input & Output Ports, Performance, Battery Life

Input & Output ports:

The N128 sports a standard set of input & outport ports which're found onboard most netbooks. You get three USB 2.0 ports, a 3-in-1 media card reader (SD, SDHC & MMC), 3.5mm headphone-out/line-out jack, 3.5mm microphone jack, Ethernet port and a VGA out port. Miscellaeous ports include the Kensington Security Lock slot and the DC-in port. Not much conclusions to be drawn here since these ports are a defacto standard onboard netbooks.

A quick tour around the Samsung N128 -

Front: Heat-vent, 3-in-1 card reader, Power On/Off switch.

Left: Ethernet port, VGA out, Heat-vent, USB port, Mic-in, Headphone-out


Right: 2 x USB ports, Kensington security slot, DC in.

Back

Performance:

There's not much to be written about the performance of a netbook. A netbook is NOT meant to do high-end gaming, run 3D rendering applications, AV editing or viewing HD rips - at least not yet! We may have netbooks or handheld devices in the future which may do all that and even more but as of today a netbook does what it is supposed to - web browsing, email, IM, using MS Office apps, do presentations, mobile entertainment such as listening to music, viewing 480p SD movies & trailers etc. to name a few.

Video playback performance was decent. 480p files such as the DVD rips played flawlessly with the CPU usage accounting to about 25% to 30%. A 720p file layed with some stutter and a few dropped frames - the CPU usage was around 50% to 60%. A 1080p file played with broken audio, frequent stutter and dropped frames most of the time which concludes this is not your next multimedia laptop!

Here's a screenshot which shows the HDTune benchmark for the stock Samsung Spinpoint HM160HI hard drive:

The boot time of the netbook with Windows 7 Ultimate x86 loaded was as well recorded and the test was repeated thrice to ensure I wasn't being deceived here! The laptop booted within 35 seconds to the desktop with the Avira Antivirus Trial version loaded! Considering it's a 5400rpm SATA 1.5Gbps hard drive, this's mighty impressive a feat, to say the least.

Battery Life:

The N128 features a 6-cell Li-ion battery - something which low-priced netbooks do not come up with! In an endurance test where the battery was charged to 100%, screen brightness set to 3 bars, WLAN active and the power plan set to 'balanced', the system stayed on for 6 hours and 43 minutes of constant use. When the screen brightness was turned down the lowest setting and the rest of the setup maintaned the same, the battery should see through another 15 minutes before the netbook switches to standby mode . The best balance between battery and life and the brightness could be when the brightness is set to 3 bars.

Unfortunately there does not seem to be an upgrade option for the battery.

Display & Sound, Keyboard, Touchpad & Onboard Indicators

Display & Sound:

The Samsung N128 uses an LED-backlit display panel with a native resolution of 1024 x 600 which's a defacto standard for 10" netbooks. An interesting feature not to be found on a majority of netbook displays - the N128 sports a matte screen! For a measly INR 13, 500 worth netbook, this's a blessing in disguise if you ask me - I HATE glossy displays!

The screen offers good color and contrast with sufficient readability indoors under strong lights or outdoors under direct sunlight. I'd like to see other netbook manufacturers switch to matte screens in the future revisions of their netbook lineup!

Horizontal and vertical viewing angles were brilliant. Color inversion was minimal when the screen was viewed from below and above. When viewed horizontally, the colors stayed accurate at extremely wide viewing angles.

As far as the sound department goes, Sasmsung has manged to strip down the onboard speakers from stereo to mono which essentially means just a single speaker - which should not be a let down for the average discerning user who may switch to the line-out/headphone-out for sound. Cost cutting is pretty much evident here.

The netbook uses a Realtek HD Audio sound chip. The onboard 1.5W speaker is not very loud nor does the sound crack when the volume is notched up. The SQ was good, when switched to the line-out. I managed to hook my desktop speakers Altec Lansing MX5021 to the headphone out and listened to quite a few FLACs using FOOBAR and I was quite impressed with the SQ.

Keyboard, Touchpad & Onboard Indicators:

The N128 uses a keyboard which is virtually identical to the one used onboard the NCX0 series. Surprisingly, the keyboard isn't cramped although sometimes I happened to mistype the letter 's' for 'a'. A new user may take time to get adapted to the keyboard featured onboard netbooks which in general have a smaller footprint compared to standard keyboards found on notebooks and desktops.


The typing surface does feel strong with no flex and the individual keys noy showing any signs of wobbling. Another point worth mentioning here is the dedicated Page Up and Page Down keys featured on the keyboard layout.




The shortcut keys have been integrated with the Function keys, the Escape key, the Insert key and the directional keys. The numerical keypad is integrated within the keyboard as well. The shortcut keys are enabled when the required driver is installed.

The Synaptics touchpad used on the N128 is fairly large, almost as big as the spacebar which's pretty standard for a netbook. The touchpad is gesture enabled and once the OS is installed, the touchpad demands that a driver be installed - downloaded off the web or from the supplied CD, which supports a horde of multi-touch gestures such as 'pinching' your fingers together or 'pulling' your fingers apart to zoom-in or zoom-out respectively.

The left and right touchpad keys are located beneath a single rocker-style button and the buttons sport a pretty responsive feedback so it shouldn't be be much of a problem to figure out if you've pressed the left or the right button.

The lack of a dedicated wireless on/off switch is something Samsung should've put thought to. In any case, we can turn it off by pressing the Fn key + F9. How hard is that!

Onboard Indicators:

With regard to the onboard LED indicators, you get 5 indicators for the Caps Lock On, Hard Disk Activity, Wi-Fi On, Battery Charging and Power on. The indicators are positioned adjacent to the left touchpad key adjacent to the onboard mic. The new 'intel Atom inside' logo with a partial holographic image at the top-right corner, brightly shines on the left-bottom of the netbook!