We provide Oracle administration support on GNU Linux Servers. One of our customers had us set up a new Oracle XE server for them on CentOS. We set up everything and had the system up and running fine. We had also tested everything on the server and verified connection status from clients. Two days after installation we got a call from the customer that he could not open the Oracle XE web administration interface and he was getting an access denied, page not found error on http://127.0.0.1:8080/apex
We promptly looked into the issue and checked for any mistakes in configuration or the setup. We scourged the oracle technology forums for an answer to this problem. There were a few solutions that were mentioned on the site. We tried all of them that we found on OTN but could not figure out the problem. The oracle service was running fine but we could not connect to it through the web admin interface.
Some of the solutions mentioned on the site included
a) Reinstalling Oracle XE - we did not want to go this way as we would not learn anything by doing this
b) Reloading settings by running
/etc/init.d/oracle-xe force-reload. We did this but didn't change anything
c) We tried the
exec dbms_xdb.sethttpport(8080) strategy but it was throwing errors.
On checking
lsnrctl status we were getting the following errors
Copyright (c) 1991, 2005, Oracle. All rights reserved.
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC_FOR_XE)))
TNS-12541: TNS:no listener
TNS-12560: TNS:protocol adapter error
TNS-00511: No listener
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=linux)(PORT=1521)))
TNS-12541: TNS:no listener
TNS-12560: TNS:protocol adapter error
TNS-00511: No listener
We figured that the the listener was not able to start and bind to the port and had something to do with network settings. We checked out /etc/hostname and /etc/hosts and checked with the local ip. What had happened was that the local static IP was changed manually after the Oracle XE installation but the hosts file did not reflect this change. We corrected this error and did a
/etc/init.d/oracle-xe force-reload and presto everything was working.
We were no longer getting the "Could not connect to http://localhost:8080/apex, Page not found" error anymore. We verified that the listeners were running by running
lsnrctl status which gave us the correct response which should look like below
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC_FOR_XE)))
STATUS of the LISTENER
------------------------
Alias LISTENER
Version TNSLSNR for Linux: Version 10.2.0.1.0 - Production
Start Date 1-DEC-2008 17:22:06
Uptime 0 days 1 hr. 12 min. 14 sec
Trace Level off
Security ON: Local OS Authentication
SNMP OFF
Default Service XE
Listener Parameter File /usr/lib/oracle/xe/app/oracle/product/10.2.0/server/network/admin/listener.ora
Listener Log File /usr/lib/oracle/xe/app/oracle/product/10.2.0/server/network/log/listener.log
Listening Endpoints Summary...
(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC_FOR_XE)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=linux)(PORT=1521)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=127.0.0.1)(PORT=8080))(Presentation=HTTP)(Session=RAW))
Services Summary...
Service "PLSExtProc" has 1 instance(s).
Instance "PLSExtProc", status UNKNOWN, has 1 handler(s) for this service...
Service "XE" has 1 instance(s).
Instance "XE", status READY, has 1 handler(s) for this service...
Service "XEXDB" has 1 instance(s).
Instance "XE", status READY, has 1 handler(s) for this service...
Service "XE_XPT" has 1 instance(s).
Instance "XE", status READY, has 1 handler(s) for this service...
The command completed successfully
Comments
thanq
Thanks a lot for the help
How do I correct this error in windows?
You fixed the problem in linux. But how do you fix the problem in windows. I want to understand this! Please send me detailed information. what should my host file look like?
That's the answer
Many Thanks !!!
lsnrctl start does not work, but /etc/init.d/oracle-xe force-reload is the solution.
Running Oracle XE in a Debian Lenny box.
I had this problem after my
I had this problem after my PC has been migrated to an other domain so the host name had to be changed. The solution was just to edit the two files (that are under C:\oraclexe\app\oracle\product\10.2.0\server\NETWORK\ADMIN on my machine):
listener.ora
tnsnames.ora
In these files I changed the value of HOST (. in the following example):
XE =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = .)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = XE)
)
)
Similar to 127.0.0.1:8080/apex problem
But that problem was solved by u r very gd solution
thanks a lot
Solution to apex
HI, I have a similar problem with not being able to connect (it only worked the first time I installed it). However, I'm a rookie at this and i have no idea how to correct the issue with etc/init.d/oracle-xe force-reload. How am I to correct or add the etc/init.d/oracle-xe force-reload ? I do not see a hostname with an IP address with it either. Could you help me with this?
thank you
-K.N
Some troubleshooting tips
I don't have a system in house to test this. But here are some troubleshooting tips
a) Make sure your oracle server is running - use ps/top
b) Make sure your server is listening on the ports - use lsnrctl
c) Make sure your ports are open - use telnet
To restart oracle open a terminal and type in
/etc/init.d/oracle-xe force-reload
Anoop John
Team Zyxware
Thanks!!!
I had this problem after I had changed the listener port on my XE database from the default of 1521 to another port (for security reasons). I was able to access the database via SQL*plus but not the Apex web interface. After a lot of searching I found this blog post, tried /etc/init.d/oracle-xe force-reload and it worked.
A thousand thankyous!
Getting same error but only on Windows XP
Getting same error but only on Windows XP
In Firefox, it says could not connect..
thanks
racle XE - Solution to 'cannot access http://127.0.0.1:8080/apex
I have the same problem and would like some more information if possible in particular
what is to be changed in the hosts file.
The problem occurred after 2 logons
What happened in the above
What happened in the above case was that the ip of the machine was changed and this was not reflected in the hosts file. The hosts file should have a line with the hostname of the current machine and the IP of the machine
Post new comment