Solved

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

Posted on 2014-07-17
13
634 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 83

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 83

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
Efficient way to get backups off site to Azure

This user guide provides instructions on how to deploy and configure both a StoneFly Scale Out NAS Enterprise Cloud Drive virtual machine and Veeam Cloud Connect in the Microsoft Azure Cloud.

 
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

PRTG Network Monitor: Intuitive Network Monitoring

Network Monitoring is essential to ensure that computer systems and network devices are running. Use PRTG to monitor LANs, servers, websites, applications and devices, bandwidth, virtual environments, remote systems, IoT, and many more. PRTG is easy to set up & use.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

You ever wonder how to backup Linux system files just like Windows System Restore?  Well you can use Timeshift in Linux to perform those similar action.  This tutorial will show you how to backup your system files and keep regular intervals. Note…
It is possible to boost certain documents at query time in Solr. Query time boosting can be a powerful resource for finding the most relevant and "best" content. Of course the more information you index, the more fields you will be able to use for y…
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.:
This demo shows you how to set up the containerized NetScaler CPX with NetScaler Management and Analytics System in a non-routable Mesos/Marathon environment for use with Micro-Services applications.

920 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

12 Experts available now in Live!

Get 1:1 Help Now