Solved

Why is Apache2 web server on Debian Linux displaying script source code?

Posted on 2014-07-17
13
632 Views
Last Modified: 2014-08-01
I tried to install the phpMyAdmin package on a Debian Linux 6 server (via apt-get).  When the package installed, it removed Apache and installed Apache2.  Now, when I try to browse to .cgi and .sql pages on the web server (the files are located in /home/www/), the source code is displayed instead of being executed.  What do I need to configure so that the code is executed instead of being displayed in the browser?

Other Information:
html files seem to work fine.
0
Comment
Question by:Matt Mrowicki
  • 6
  • 2
  • 2
  • +3
13 Comments
 
LVL 82

Expert Comment

by:Dave Baldwin
ID: 40202931
Make sure PHP is installed.  '.cgi' is usually Perl and '.sql' is usually SQL code that doesn't make any sense as a web page.
0
 

Author Comment

by:Matt Mrowicki
ID: 40202948
When I do a perl -v, I get a response that perl, v5.10.1 is installed.

This server has a bunch of .sql files.  They start with code like:

<! SQL connect localhost <database> <password> >
0
 

Author Comment

by:Matt Mrowicki
ID: 40202962
When I do php --version, I get PHP 5.3.3-7+squeeze19...
0
 

Author Comment

by:Matt Mrowicki
ID: 40202967
php is also working ok.  I get the expected results from phpinfo( ).
0
 
LVL 82

Expert Comment

by:Dave Baldwin
ID: 40203060
But do you see phpinfo() in you web browser when you try to access it thru Apache?  Is phpMyAdmin working?

I don't know what those SQL files are for.  Nothing on my systems would run those.
0
 

Author Comment

by:Matt Mrowicki
ID: 40203097
Yes, phpinfo() works fine in the browser.

It looks the .sql files are MySQL code.  In the original Apache setup, I found the following in httpd.conf.

# Add the handler for www-mysql
AddHandler www-sql .sql
Action www-sql /cgi-bin/www-mysql

I think if I could get this to work with Apache2, I'd be set.
0
Highfive Gives IT Their Time Back

Highfive is so simple that setting up every meeting room takes just minutes and every employee will be able to start or join a call from any room with ease. Never be called into a meeting just to get it started again. This is how video conferencing should work!

 
LVL 11

Expert Comment

by:Radek Baranowski
ID: 40203102
do you browse to localhost/... or rather /apache_root/htdocs etc. ??
is your apache started at all?

please post a screenshot
0
 

Author Comment

by:Matt Mrowicki
ID: 40203134
I'm actually browsing from another PC on the network via IP address.

If I browse to:
http://10.10.100.252/admin/sessions.sql

I get a 404 page:
Not Found
The requested URL /cgi-bin/www-mysql/admin/sessions.sql was not found on this server.
Apache/2.2.16 (Debian) Server at 10.10.100.252 Port 80
0
 
LVL 58

Accepted Solution

by:
Gary earned 500 total points
ID: 40203176
Sounds like CGI is not set up in the httpd.conf

Sample of what should be there can be found here
http://www.experts-exchange.com/Q_24253113.html
0
 
LVL 61

Expert Comment

by:gheist
ID: 40203785
is cgi-bin a ScriptAlias?
Is script www-mysql exiting without import errors when ran from command line?
0
 
LVL 28

Expert Comment

by:FishMonger
ID: 40204484
Are you saying that both .cgi and .sql files are displaying the source code rather than being executed?  Or are .cgi files executing correctly but not .sql files?

What is the actual path to sessions.sql?

Did you restart apache after adding:
# Add the handler for www-mysql
AddHandler www-sql .sql
Action www-sql /cgi-bin/www-mysql
0
 
LVL 61

Expert Comment

by:gheist
ID: 40205180
restart apache is
# apachectl graceful
0
 

Author Closing Comment

by:Matt Mrowicki
ID: 40234991
The issue has been resolved.  The problem was the configuration in httpd.conf.  What made it tricky is that when the initial Apache installation was done (before the update to Apache2), some defaults were not the same as used in Apache2.  Once the file was edited with the correct info, everything worked properly.  Thank you for all of the assistance!
0

Featured Post

Do You Know the 4 Main Threat Actor Types?

Do you know the main threat actor types? Most attackers fall into one of four categories, each with their own favored tactics, techniques, and procedures.

Join & Write a Comment

SSH (Secure Shell) - Tips and Tricks As you all know SSH(Secure Shell) is a network protocol, which we use to access/transfer files securely between two networked devices. SSH was actually designed as a replacement for insecure protocols that sen…
In Solr 4.0 it is possible to atomically (or partially) update individual fields in a document. This article will show the operations possible for atomic updating as well as setting up your Solr instance to be able to perform the actions. One major …
Learn several ways to interact with files and get file information from the bash shell. ls lists the contents of a directory: Using the -a flag displays hidden files: Using the -l flag formats the output in a long list: The file command gives us mor…
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.:

746 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

13 Experts available now in Live!

Get 1:1 Help Now