Overclock.net › Forums › Software, Programming and Coding › Operating Systems › Linux, Unix › Apache playing up in Ubuntu
New Posts  All Forums:Forum Nav:

Apache playing up in Ubuntu

post #1 of 9
Thread Starter 
I installed a LAMP stack onto Ubuntu. It had PHP, MySQL and Apache all bundled in it, along with a lot of other packages. For the first time it worked fine, but started playing up after I re-booted my machine.

I went to http://localhost and it kept saying it couldn't be found. So I re-installed LAMP. Then it would work. Then re-boot and same problem. So I did sudo service apache2 start and get the error:
Code:
joshua@TheMatrix:~$ sudo service apache2 start
[sudo] password for joshua: 
 * Starting web server apache2                                                  apache2: Syntax error on line 260 of /etc/apache2/apache2.conf: Could not open configuration file /etc/apache2/conf.d/phpmyadmin.conf: No such file or directory
Action 'start' failed.
The Apache error log may have more information.

Right now I'm unsure what to do as I've tried everything I can think of. I really need this and don't want to have to switch back to Windows for what should be such a small thing.
Main Rig.
(14 items)
 
Battlefield 2 review.
Battlefield 2 PC Game EA
 
CPUMotherboardGraphicsRAM
Bulldozer FX4100 Gigabyte GA-M68MT-S2 MSI 7770 Kingston Hyper X | 2 x 2 GB 
Hard DriveOptical DriveCoolingOS
WD 2 TB  LiteON DVD/CD R-W Drive AMD Standard cooler Windows 7 Ultimate 
MonitorKeyboardPowerCase
32' Luxor Full HD TV Microsoft comfort curce Antec 450 Watt OcUK Value case 
MouseAudio
Microsoft wireless mouse Logitech speakers & Bass 
  hide details  
Reply
Main Rig.
(14 items)
 
Battlefield 2 review.
Battlefield 2 PC Game EA
 
CPUMotherboardGraphicsRAM
Bulldozer FX4100 Gigabyte GA-M68MT-S2 MSI 7770 Kingston Hyper X | 2 x 2 GB 
Hard DriveOptical DriveCoolingOS
WD 2 TB  LiteON DVD/CD R-W Drive AMD Standard cooler Windows 7 Ultimate 
MonitorKeyboardPowerCase
32' Luxor Full HD TV Microsoft comfort curce Antec 450 Watt OcUK Value case 
MouseAudio
Microsoft wireless mouse Logitech speakers & Bass 
  hide details  
Reply
post #2 of 9
Did you check the apache error log, like the output requested you to?
post #3 of 9
Quote:
Could not open configuration file /etc/apache2/conf.d/phpmyadmin.conf: No such file or directory

Well there's your problem!!! Your phpmyadmin.conf file is not found or you don't have the syntax in your apache.conf file correct.

I would suggest posting your apache.conf file here for us to see it... especially need the couple lines before and after this error line..
Quote:
apache2: Syntax error on line 260 of /etc/apache2/apache2.conf

I would also like you to go to run this:
Code:
cd /etc/apache2/conf.d
ls -lha /etc/apache2/conf.d/ | grep phpmyadmin.conf

and print that here as well want to see if it finds the file and if it doesn't i want you to run this:
Code:
locate phpmyadmin.conf
Intel build
(17 items)
 
  
CPUMotherboardGraphicsRAM
i7 860 gigabyte p55-ud6 gigabyte gv-n560oc-1gi Corsair Vengeance CMZ8GX3M2A1600C9 
Hard DriveHard DriveHard DriveOptical Drive
Crucial M4 WD Caviar Black WD Caviar Black LiteOn Lightscribe 24x 
CoolingOSMonitorMonitor
Thermaltake Frio Extreme CLP0587 Arch Linux x86_64 samsung 2243swx ASUS vs-248H-p 
KeyboardPowerCaseMouse
moditek led flex Seasonic 860Watt Platinum Antec Lanboy air razor death adder 
  hide details  
Reply
Intel build
(17 items)
 
  
CPUMotherboardGraphicsRAM
i7 860 gigabyte p55-ud6 gigabyte gv-n560oc-1gi Corsair Vengeance CMZ8GX3M2A1600C9 
Hard DriveHard DriveHard DriveOptical Drive
Crucial M4 WD Caviar Black WD Caviar Black LiteOn Lightscribe 24x 
CoolingOSMonitorMonitor
Thermaltake Frio Extreme CLP0587 Arch Linux x86_64 samsung 2243swx ASUS vs-248H-p 
KeyboardPowerCaseMouse
moditek led flex Seasonic 860Watt Platinum Antec Lanboy air razor death adder 
  hide details  
Reply
post #4 of 9
Thread Starter 
Quote:
Originally Posted by adramalech707 View Post

Well there's your problem!!! Your phpmyadmin.conf file is not found or you don't have the syntax in your apache.conf file correct.
I would suggest posting your apache.conf file here for us to see it... especially need the couple lines before and after this error line..
I would also like you to go to run this:
Code:
cd /etc/apache2/conf.d
ls -lha /etc/apache2/conf.d/ | grep phpmyadmin.conf
and print that here as well want to see if it finds the file and if it doesn't i want you to run this:
Code:
locate phpmyadmin.conf

ok doke.

Apache.conf: Warning: Spoiler! (Click to show)
Code:
# This is the main Apache server configuration file.  It contains the
# configuration directives that give the server its instructions.
# See http://httpd.apache.org/docs/2.2/ for detailed information about
# the directives and /usr/share/doc/apache2-common/README.Debian.gz about
# Debian specific hints.
#
#
# Summary of how the Apache 2 configuration works in Debian:
# The Apache 2 web server configuration in Debian is quite different to
# upstream's suggested way to configure the web server. This is because Debian's
# default Apache2 installation attempts to make adding and removing modules,
# virtual hosts, and extra configuration directives as flexible as possible, in
# order to make automating the changes and administering the server as easy as
# possible.

# It is split into several files forming the configuration hierarchy outlined
# below, all located in the /etc/apache2/ directory:
#
#       /etc/apache2/
#       |-- apache2.conf
#       |       `--  ports.conf
#       |-- mods-enabled
#       |       |-- *.load
#       |       `-- *.conf
#       |-- conf.d
#       |       `-- *
#       `-- sites-enabled
#               `-- *
#
#
# * apache2.conf is the main configuration file (this file). It puts the pieces
#   together by including all remaining configuration files when starting up the
#   web server.
#
#   In order to avoid conflicts with backup files, the Include directive is
#   adapted to ignore files that:
#   - do not begin with a letter or number
#   - contain a character that is neither letter nor number nor _-.
#   - contain .dpkg
#
# * ports.conf is always included from the main configuration file. It is
#   supposed to determine listening ports for incoming connections, and which
#   of these ports are used for name based virtual hosts.
#
# * Configuration files in the mods-enabled/ and sites-enabled/ directories
#   contain particular configuration snippets which manage modules or virtual
#   host configurations, respectively.
#
#   They are activated by symlinking available configuration files from their
#   respective *-available/ counterparts. These should be managed by using our
#   helpers a2enmod/a2dismod, a2ensite/a2dissite. See
#   their respective man pages for detailed information.
#
# * Configuration files in the conf.d directory are either provided by other
#   packages or may be added by the local administrator. Local additions
#   should start with local- or end with .local or .local.conf to avoid name
#   clashes. All files in conf.d are included 
#
# * The binary is called apache2. Due to the use of environment variables, in
#   the default configuration, apache2 needs to be started/stopped with
#   /etc/init.d/apache2 or apache2ctl. Calling /usr/bin/apache2 directly will not
#   work with the default configuration.


# Global configuration
#

#
# ServerRoot: The top of the directory tree under which the server's
# configuration, error, and log files are kept.
#
# NOTE!  If you intend to place this on an NFS (or otherwise network)
# mounted filesystem then please read the LockFile documentation (available
# at <URL:http://httpd.apache.org/docs/2.2/mod/mpm_common.html#lockfile>);
# you will save yourself a lot of trouble.
#
# Do NOT add a slash at the end of the directory path.
#
#ServerRoot "/etc/apache2"

#
# The accept serialization lock file MUST BE STORED ON A LOCAL DISK.
#
LockFile ${APACHE_LOCK_DIR}/accept.lock

#
# PidFile: The file in which the server should record its process
# identification number when it starts.
# This needs to be set in /etc/apache2/envvars
#
PidFile ${APACHE_PID_FILE}

#
# Timeout: The number of seconds before receives and sends time out.
#
Timeout 300

#
# KeepAlive: Whether or not to allow persistent connections (more than
# one request per connection). Set to "Off" to deactivate.
#
KeepAlive On

#
# MaxKeepAliveRequests: The maximum number of requests to allow
# during a persistent connection. Set to 0 to allow an unlimited amount.
# We recommend you leave this number high, for maximum performance.
#
MaxKeepAliveRequests 100

#
# KeepAliveTimeout: Number of seconds to wait for the next request from the
# same client on the same connection.
#
KeepAliveTimeout 5

##
## Server-Pool Size Regulation (MPM specific)
## 

# prefork MPM
# StartServers: number of server processes to start
# MinSpareServers: minimum number of server processes which are kept spare
# MaxSpareServers: maximum number of server processes which are kept spare
# MaxClients: maximum number of server processes allowed to start
# MaxRequestsPerChild: maximum number of requests a server process serves
<IfModule mpm_prefork_module>
    StartServers          5
    MinSpareServers       5
    MaxSpareServers      10
    MaxClients          150
    MaxRequestsPerChild   0
</IfModule>

# worker MPM
# StartServers: initial number of server processes to start
# MinSpareThreads: minimum number of worker threads which are kept spare
# MaxSpareThreads: maximum number of worker threads which are kept spare
# ThreadLimit: ThreadsPerChild can be changed to this maximum value during a
#              graceful restart. ThreadLimit can only be changed by stopping
#              and starting Apache.
# ThreadsPerChild: constant number of worker threads in each server process
# MaxClients: maximum number of simultaneous client connections
# MaxRequestsPerChild: maximum number of requests a server process serves
<IfModule mpm_worker_module>
    StartServers          2
    MinSpareThreads      25
    MaxSpareThreads      75 
    ThreadLimit          64
    ThreadsPerChild      25
    MaxClients          150
    MaxRequestsPerChild   0
</IfModule>

# event MPM
# StartServers: initial number of server processes to start
# MinSpareThreads: minimum number of worker threads which are kept spare
# MaxSpareThreads: maximum number of worker threads which are kept spare
# ThreadsPerChild: constant number of worker threads in each server process
# MaxClients: maximum number of simultaneous client connections
# MaxRequestsPerChild: maximum number of requests a server process serves
<IfModule mpm_event_module>
    StartServers          2
    MinSpareThreads      25
    MaxSpareThreads      75 
    ThreadLimit          64
    ThreadsPerChild      25
    MaxClients          150
    MaxRequestsPerChild   0
</IfModule>

# These need to be set in /etc/apache2/envvars
User ${APACHE_RUN_USER}
Group ${APACHE_RUN_GROUP}

#
# AccessFileName: The name of the file to look for in each directory
# for additional configuration directives.  See also the AllowOverride
# directive.
#

AccessFileName .htaccess

#
# The following lines prevent .htaccess and .htpasswd files from being 
# viewed by Web clients. 
#
<Files ~ "^\.ht">
    Order allow,deny
    Deny from all
    Satisfy all
</Files>

#
# DefaultType is the default MIME type the server will use for a document
# if it cannot otherwise determine one, such as from filename extensions.
# If your server contains mostly text or HTML documents, "text/plain" is
# a good value.  If most of your content is binary, such as applications
# or images, you may want to use "application/octet-stream" instead to
# keep browsers from trying to display binary files as though they are
# text.
#
# It is also possible to omit any default MIME type and let the
# client's browser guess an appropriate action instead. Typically the
# browser will decide based on the file's extension then. In cases
# where no good assumption can be made, letting the default MIME type
# unset is suggested  instead of forcing the browser to accept
# incorrect  metadata.
#
DefaultType None


#
# HostnameLookups: Log the names of clients or just their IP addresses
# e.g., www.apache.org (on) or 204.62.129.132 (off).
# The default is off because it'd be overall better for the net if people
# had to knowingly turn this feature on, since enabling it means that
# each client request will result in AT LEAST one lookup request to the
# nameserver.
#
HostnameLookups Off

# ErrorLog: The location of the error log file.
# If you do not specify an ErrorLog directive within a <VirtualHost>
# container, error messages relating to that virtual host will be
# logged here.  If you *do* define an error logfile for a <VirtualHost>
# container, that host's errors will be logged there and not here.
#
ErrorLog ${APACHE_LOG_DIR}/error.log

#
# LogLevel: Control the number of messages logged to the error_log.
# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
#
LogLevel warn

# Include module configuration:
Include mods-enabled/*.load
Include mods-enabled/*.conf

# Include list of ports to listen on and which to use for name based vhosts
Include ports.conf

#
# The following directives define some format nicknames for use with
# a CustomLog directive (see below).
# If you are behind a reverse proxy, you might want to change %h into %{X-Forwarded-For}i
#
LogFormat "%v:%p %h %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\"" vhost_combined
LogFormat "%h %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\"" combined
LogFormat "%h %l %u %t \"%r\" %>s %O" common
LogFormat "%{Referer}i -> %U" referer
LogFormat "%{User-agent}i" agent

# Include of directories ignores editors' and dpkg's backup files,
# see the comments above for details.

# Include generic snippets of statements
Include conf.d/

# Include the virtual host configurations:
Include sites-enabled/

cd /etc/apache2/conf.d and ls -lha /etc/apache2/conf.d/ | grep phpmyadmin.conf:
Warning: Spoiler! (Click to show)
Code:
joshua@TheMatrix:~$ cd /etc/apache2/conf.d
joshua@TheMatrix:/etc/apache2/conf.d$ ls -lha /etc/apache2/conf.d/ | grep phpmyadmin.conf
lrwxrwxrwx 1 root root   28 Oct 27 19:52 phpmyadmin.conf -> ../../phpmyadmin/apache.conf
joshua@TheMatrix:/etc/apache2/conf.d$
Main Rig.
(14 items)
 
Battlefield 2 review.
Battlefield 2 PC Game EA
 
CPUMotherboardGraphicsRAM
Bulldozer FX4100 Gigabyte GA-M68MT-S2 MSI 7770 Kingston Hyper X | 2 x 2 GB 
Hard DriveOptical DriveCoolingOS
WD 2 TB  LiteON DVD/CD R-W Drive AMD Standard cooler Windows 7 Ultimate 
MonitorKeyboardPowerCase
32' Luxor Full HD TV Microsoft comfort curce Antec 450 Watt OcUK Value case 
MouseAudio
Microsoft wireless mouse Logitech speakers & Bass 
  hide details  
Reply
Main Rig.
(14 items)
 
Battlefield 2 review.
Battlefield 2 PC Game EA
 
CPUMotherboardGraphicsRAM
Bulldozer FX4100 Gigabyte GA-M68MT-S2 MSI 7770 Kingston Hyper X | 2 x 2 GB 
Hard DriveOptical DriveCoolingOS
WD 2 TB  LiteON DVD/CD R-W Drive AMD Standard cooler Windows 7 Ultimate 
MonitorKeyboardPowerCase
32' Luxor Full HD TV Microsoft comfort curce Antec 450 Watt OcUK Value case 
MouseAudio
Microsoft wireless mouse Logitech speakers & Bass 
  hide details  
Reply
post #5 of 9
oh I didn't scroll across and spot phpmyadmin in the error laugher.gif sorry about that.


Right, ignore what you're doing as phpadmin is insecure. So you'd need a non-default config if you want to secure it. A few questions before I post the config though:
  1. do you have a domain name (ie are you able to have sub domains eg myadmin.joshd.com as well as www.josh.com ?) if so, this is make things a touch better as you can keep your site entirely separate from phpmyadmin (hostname.com/phpmyadmin is a popular attack so moving it will significantly reduce the number of automated attacks. of course, we could always use a different alias name, but I tend to think using a subdomain is cleaner).
  2. can you post your phpmyadmin.conf please (I just need to verify where the files are - or rather than Ubuntu installs phpMyAdmin to the same location as Debian does.
  3. how familiar are you with htpasswd / using HTTP authentication?
  4. and finally, do you have fail2ban installed?

The plan is,
  1. use a subdomain.yourdomain.com to connect to phpMyAdmin rather than a subfolder on your live site (as attacks do check for the existence of that).
  2. Then set up HTTP authentication, so you're not relying on your MySQL credentials being secure and eliminating any potential weaknesses in the security of phpMyAdmins login screen
  3. Then add a fail2ban rule so that 4 failed HTTP authentications will automatically ban the originators IP from your server for an hour.


Anything short of this, then I'd recommend avoid phpMyAdmin entirely and instead running a standalone MySQL front end connecting via an SSH tunnel. Do /NOT/ use the default phpMyAdmin config as it is insecure!
post #6 of 9
before you do all that though .. is this a public facing internet server, or are you just messing around locally behind a hardware firewall? To me it seems like this is your home ISP and is not facing the WAN... If you've got a firewall and are not exposing any ports, don't waste time securing it right away. This isn't bad to do at some point, but is not necessary right away.

In either case you should run the apache service and the sql service each in separate VMs which makes securing it a lot more sensible later on, and avoids cluttering up your main install. Do not run development services in your main install.
untitled
(30 items)
 
  
CPUMotherboardGraphicsGraphics
2x E5-2687W ASUS Z9PED8-WS EVGA GTX 570 (Linux host) ASUS 7870HD (win7 VM) 
RAMHard DriveHard DriveCooling
64GB G.SKILL 2133 2x Crucial M4 256GB raid1 2x (2x 1TB raid1) 2x Apogee HD  
CoolingCoolingCoolingCooling
2x RX 480 2x MCP 655 RP-452x2 rev1 (deprecated.) 16x AP-29  
CoolingOSOSOS
EK FC 580 Gentoo + around 14 other VMs + windows 7 gaming VM 
MonitorMonitorKeyboardPower
Viewsonic 23" 1080P Viewsonic 19" Logitech G510 Corsair AX 1200 
CaseMouseAudioAudio
Case Labs TH10 Logitech G500 Onboard (Linux host) Usb sound adapter (win7 VM) 
AudioOtherOtherOther
2 sets of Logitech speakers (Linux host / win7 VM) 2x Lamptron FC-5 IOGEAR 2 way HDMI KVM Switch Sonnet USB2 controller (win7 VM) 
  hide details  
Reply
untitled
(30 items)
 
  
CPUMotherboardGraphicsGraphics
2x E5-2687W ASUS Z9PED8-WS EVGA GTX 570 (Linux host) ASUS 7870HD (win7 VM) 
RAMHard DriveHard DriveCooling
64GB G.SKILL 2133 2x Crucial M4 256GB raid1 2x (2x 1TB raid1) 2x Apogee HD  
CoolingCoolingCoolingCooling
2x RX 480 2x MCP 655 RP-452x2 rev1 (deprecated.) 16x AP-29  
CoolingOSOSOS
EK FC 580 Gentoo + around 14 other VMs + windows 7 gaming VM 
MonitorMonitorKeyboardPower
Viewsonic 23" 1080P Viewsonic 19" Logitech G510 Corsair AX 1200 
CaseMouseAudioAudio
Case Labs TH10 Logitech G500 Onboard (Linux host) Usb sound adapter (win7 VM) 
AudioOtherOtherOther
2 sets of Logitech speakers (Linux host / win7 VM) 2x Lamptron FC-5 IOGEAR 2 way HDMI KVM Switch Sonnet USB2 controller (win7 VM) 
  hide details  
Reply
post #7 of 9
Quote:
Originally Posted by lloyd mcclendon View Post

before you do all that though .. is this a public facing internet server, or are you just messing around locally behind a hardware firewall? To me it seems like this is your home ISP and is not facing the WAN... If you've got a firewall and are not exposing any ports, don't waste time securing it right away. This isn't bad to do at some point, but is not necessary right away.
:laugh: I didn't even consider that this might be a home development server. Good point mate thumb.gif
Quote:
Originally Posted by lloyd mcclendon View Post

In either case you should run the apache service and the sql service each in separate VMs which makes securing it a lot more sensible later on, and avoids cluttering up your main install. Do not run development services in your main install.
I'm not convinced running RDBMS on a separate system to your VM actually gives any security benefits. At least with running both services locally then you can confine your db to listening on localhost. I always thought the main benefit of running the two daemons on separate machines (virtual or otherwise) was for load balancing. However if there are some security issues I'm unaware of then I'd absolutely love the correction smile.gif

Excellent point about the dev and live services being on separate hardware though.
post #8 of 9
Thread Starter 
It is a home development server yes. I am at school now though, so will follow instructions later.

Thanks all who replied

+rep
Main Rig.
(14 items)
 
Battlefield 2 review.
Battlefield 2 PC Game EA
 
CPUMotherboardGraphicsRAM
Bulldozer FX4100 Gigabyte GA-M68MT-S2 MSI 7770 Kingston Hyper X | 2 x 2 GB 
Hard DriveOptical DriveCoolingOS
WD 2 TB  LiteON DVD/CD R-W Drive AMD Standard cooler Windows 7 Ultimate 
MonitorKeyboardPowerCase
32' Luxor Full HD TV Microsoft comfort curce Antec 450 Watt OcUK Value case 
MouseAudio
Microsoft wireless mouse Logitech speakers & Bass 
  hide details  
Reply
Main Rig.
(14 items)
 
Battlefield 2 review.
Battlefield 2 PC Game EA
 
CPUMotherboardGraphicsRAM
Bulldozer FX4100 Gigabyte GA-M68MT-S2 MSI 7770 Kingston Hyper X | 2 x 2 GB 
Hard DriveOptical DriveCoolingOS
WD 2 TB  LiteON DVD/CD R-W Drive AMD Standard cooler Windows 7 Ultimate 
MonitorKeyboardPowerCase
32' Luxor Full HD TV Microsoft comfort curce Antec 450 Watt OcUK Value case 
MouseAudio
Microsoft wireless mouse Logitech speakers & Bass 
  hide details  
Reply
post #9 of 9
Quote:
Originally Posted by joshd View Post

It is a home development server yes. I am at school now though, so will follow instructions later.
Thanks all who replied
+rep

ahh, then ignore my concerns.
New Posts  All Forums:Forum Nav:
  Return Home
  Back to Forum: Linux, Unix
Overclock.net › Forums › Software, Programming and Coding › Operating Systems › Linux, Unix › Apache playing up in Ubuntu