Solved

How do I Setup Apache to respond to server IP address.

Posted on 2009-07-15
24
291 Views
Last Modified: 2012-05-07
Hi

1. I have setup a Centos5.2 server on my LAN.
2. It has IP address 192.168.0.100
3. I have installed apache 2 with yum
4. #top tells me that it's running
5. Ping tells me that my desktop computer can see the server
6. I created a directory called /var/www/html/
7. I ran #chown -R apache:apache /var/www/html
8. I setup the vhost directive as shown below
9. I type http://192.168.0.100/ into my browser and expect to see the apache default page
10. I don't

Anybody know why?

Kind Regards,
<VirtualHost *:80>

     ServerAdmin webmaster@localhost

     DocumentRoot /var/www/html

     ServerName 192.168.0.100

</VirtualHost>

Open in new window

0
Comment
Question by:lwfuk
  • 11
  • 9
  • 2
  • +2
24 Comments
 
LVL 40

Expert Comment

by:mrjoltcola
ID: 24861993
Check for firewalling.

Can you access the port locally from the same server? (ie.   telnet 192.168.0.100 80)


0
 
LVL 40

Expert Comment

by:mrjoltcola
ID: 24862010
In your list of steps you did not say whether you restarted apache with apachectl

>>6. I created a directory called /var/www/html/
>>7. I ran #chown -R apache:apache /var/www/html
>>8. I setup the vhost directive as shown below

restart apache here

>>9. I type http://192.168.0.100/ into my browser and expect to see the apache default page

0
 

Author Comment

by:lwfuk
ID: 24862128
Hi mrjoltcola

> telnet 192.168.0.100 80

Fails.

I switched off my PC firewall but still no good.

There shouldn't be any filtering on the lan side of my router should there?
0
 

Author Comment

by:lwfuk
ID: 24862151
Hi mrjoltcola

I used:

#service httpd restart

Is that the same?
0
 
LVL 40

Expert Comment

by:mrjoltcola
ID: 24862161
Yes that should work. Or manually without the init script:  apachectl restart

Try:
ps -ef | grep http

Then:
telnet localhost 80
0
 

Author Comment

by:lwfuk
ID: 24862198
Here are the results


[root@localhost www]# ps -ef | grep http

root      3810     1  0 09:41 ?        00:00:00 /usr/sbin/httpd

apache    3812  3810  0 09:41 ?        00:00:00 /usr/sbin/httpd

apache    3813  3810  0 09:41 ?        00:00:00 /usr/sbin/httpd

apache    3814  3810  0 09:41 ?        00:00:00 /usr/sbin/httpd

apache    3815  3810  0 09:41 ?        00:00:00 /usr/sbin/httpd

apache    3816  3810  0 09:41 ?        00:00:00 /usr/sbin/httpd

apache    3817  3810  0 09:41 ?        00:00:00 /usr/sbin/httpd

apache    3818  3810  0 09:41 ?        00:00:00 /usr/sbin/httpd

apache    3819  3810  0 09:41 ?        00:00:00 /usr/sbin/httpd

root      3857  3289  0 10:02 pts/0    00:00:00 grep http
 

[root@localhost www]# telnet localhost 80

Trying 127.0.0.1...

Connected to localhost.localdomain (127.0.0.1).

Escape character is '^]'.

Open in new window

0
 
LVL 40

Expert Comment

by:mrjoltcola
ID: 24862332
Appears that it is listening on localhost port 80, but not listening to other interfaces (192.xxx). Please provide the httpd.conf (relevant portions)
0
 
LVL 28

Expert Comment

by:Jan Springer
ID: 24862426
In httpd.conf:

Listen 192.168.0.100:80

service httpd reload
0
 

Author Comment

by:lwfuk
ID: 24862452
It's just a standard httpd.conf with the following changes.
Listen 192.168.0.100:80

ServerAdmin root@localhost

ServerName 192.168.0.100:80

DocumentRoot "/var/www/html"

<Directory "/var/www/html">
 

<VirtualHost *:80>

     ServerAdmin webmaster@localhost

     DocumentRoot /var/www/html

     ServerName 192.168.0.100

</VirtualHost>

Open in new window

0
 
LVL 1

Expert Comment

by:smary
ID: 24862751
I assume that your port 80 is not blocked.
If it is blocked, then issue this command:

# iptables -A INPUT -p tcp --dport 80 -j ACCEPT

Check your /var/log/messages and httpd_error.log and paste if you get some error messages there.
0
 

Author Comment

by:lwfuk
ID: 24862818
Hi Smary

I ran the command anyway and no change I'm affraid.

Thanks

0
 
LVL 40

Expert Comment

by:mrjoltcola
ID: 24862841
When you telnet to 192.168.0.100 80

Is connection refused immediately or does it "hang" / timeout?
0
How to run any project with ease

Manage projects of all sizes how you want. Great for personal to-do lists, project milestones, team priorities and launch plans.
- Combine task lists, docs, spreadsheets, and chat in one
- View and edit from mobile/offline
- Cut down on emails

 

Author Comment

by:lwfuk
ID: 24862888
It says it's connecting and then it hangs for about 20-30 seconds
Untitled-1.gif
0
 
LVL 28

Expert Comment

by:Jan Springer
ID: 24862891
I don't use the ServerName directive within a vhost container.
0
 

Author Comment

by:lwfuk
ID: 24862900
PS: I forgot to add the port on the first 2 attempts.
0
 

Author Comment

by:lwfuk
ID: 24862929
I tested the return path by pinging my desktop PC from the server.

All is OK.
0
 
LVL 40

Accepted Solution

by:
mrjoltcola earned 500 total points
ID: 24862935
This sounds like firewall. When a port is not open and a firewall is not in the way, the connection will be refused immediately. I say try to disable the Linux firewall temporarily for a sanity check.

0
 

Author Comment

by:lwfuk
ID: 24862946
Do you know what I would need to type?
0
 
LVL 40

Expert Comment

by:mrjoltcola
ID: 24862980
Try:

service iptables stop

0
 
LVL 29

Expert Comment

by:fosiul01
ID: 24862983
AS Every one said, its a firewall issue

You dont have to change any configuraion in httpd.conf to allow it telnet to port 80

if your iptables is open for port 80 , it will allow

can you post the output
cat /etc/sysconfig/iptables

I need to see if you have any rules for selinux or not
0
 

Author Closing Comment

by:lwfuk
ID: 31603872
Mr Jolt Cola

You are the MAN!!!

#service iptables stop

and it works like a charm.

Many Many Thanks.
0
 
LVL 40

Expert Comment

by:mrjoltcola
ID: 24863033
Ok, but that is not a permanent solution, unless you do have a secondary firewall. If this is open to the net, you need to re-configure the firewall to allow port 80. So your root problem is solved, now perhaps post a related question for firewall config help.

Personally I do not run firewalls on my internal boxes, I simply turn off most services, and run Cisco firewalls at the border to the dmz.
0
 

Author Comment

by:lwfuk
ID: 24863065
Many thanks.

I have an external firewall and I only want to use it as a testing server.

Kind Regards,

Adrian Smith
0
 
LVL 40

Expert Comment

by:mrjoltcola
ID: 24863130
Also, be aware, iptables will restart when you reboot. :)

If you have the CentOS desktop open, try Services Configuration Tool (run system-config-services ) and disable what you don't want, including iptables.

Or you can remote the script from /etc/rc*.d


0

Featured Post

What Should I Do With This Threat Intelligence?

Are you wondering if you actually need threat intelligence? The answer is yes. We explain the basics for creating useful threat intelligence.

Join & Write a Comment

Suggested Solutions

Using 'screen' for session sharing, The Simple Edition Step 1: user starts session with command: screen Step 2: other user (logged in with same user account) connects with command: screen -x Done. Both users are connected to the same CLI sessio…
Join Greg Farro and Ethan Banks from Packet Pushers (http://packetpushers.net/podcast/podcasts/pq-show-93-smart-network-monitoring-paessler-sponsored/) and Greg Ross from Paessler (https://www.paessler.com/prtg) for a discussion about smart network …
Learn how to find files with the shell using the find and locate commands. Use locate to find a needle in a haystack.: With locate, check if the file still exists.: Use find to get the actual location of the file.:
Get a first impression of how PRTG looks and learn how it works.   This video is a short introduction to PRTG, as an initial overview or as a quick start for new PRTG users.

758 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

23 Experts available now in Live!

Get 1:1 Help Now