Quick and dirty guide to apache on solaris 10
The apache web server is included with solaris 10. Follow these steps to enable it.
Step 1: Create a working default apache config file
The apache server config files are in /etc/apache2. To quickly get up and running, you can just use the sample config file by doing the following:
cd /etc/apache2 cp httpd.conf-example httpd.conf
Step 2: Enable the apache/httpd service
Check to see if apache is already running:
svcs -a | grep -i httpYou will probably see the following, indicating that apache is NOT running:
disabled Apr_20 svc:/network/http:apache2
Use the svcadm command to start the webserver. This will also make it automatically start if your machine reboots.
svcadm -v enable /network/http:apache2Use the following svcs command to make sure it worked:
svcs -p /network/http:apache2 STATE STIME FMRI online 15:32:44 svc:/network/http:apache2 15:32:44 28711 httpd 15:32:45 28712 httpd 15:32:45 28713 httpd 15:32:45 28714 httpd 15:32:45 28715 httpd 15:32:45 28716 httpdThis is showing that the webserver is online and working.
Step 3: Add your web content
Put your html (IE: index.html) in the /var/apache2/htdocs directory. If everything went OK, you should have a functioning apache webserver.
Debugging / Troubleshooting
If the svcs -p command from the above step doesn't show a STATE of online, do the followig:
svcs -a | grep -i httpYou'll probably see that it's in maintenance mode:
maintenance 15:16:12 svc:/network/http:apache2For more detailed info run:
svcs -l httpOR
svcs -x http svc:/network/http:apache2 (Apache 2 HTTP server) State: maintenance since May 8, 2007 3:16:12 PM EDT Reason: Start method failed repeatedly, last exited with status 1. See: http://sun.com/msg/SMF-8000-KS See: httpd(8) See: /var/svc/log/network-http:apache2.log Impact: This service is not running.Note that the second to last line tells you where the log file is, so take a look at that. Once you've fixed the problem, you can restart apache with:
svcadm restart /network/http:apache2If for some reason you want to shut off apache, use this:
svcadm disable /network/http:apache2 svcs -p /network/http:apache2 STATE STIME FMRI disabled 15:36:33 svc:/network/http:apache2
svcs -l http fmri svc:/network/http:apache2 name Apache 2 HTTP server enabled false state disabled next_state none state_time May 8, 2007 3:36:33 PM EDT logfile /var/svc/log/network-http:apache2.log restarter svc:/system/svc/restarter:default contract_id dependency require_all/error svc:/milestone/network:default (online) dependency require_all/none svc:/system/filesystem/local:default (online) dependency optional_all/error svc:/system/filesystem/autofs:default (online)