Link to home
Start Free TrialLog in
Avatar of breeze351
breeze351

asked on

Problem setting up phpMyAdmin on VPS

I'm trying to setup phpMyAdmin on a VPS server ruuning Debian 6 32bit with Webmin/Virtualmin/LAMP.

I followed the instructions as follows:
1. Downloaded phpMyAdmin-4.4.11-all-languages.tar.gz
2. Unzipped it in var/www
3. Renamed directory to phpMyAdmin
4. Changed to that directory, created the config directory and chmod o+rw config                  
5. Tried to connect to https://212.1.213.119/phpMyAdmin/setup/  When I do I get the following error messge:

An error occurred during a connection to 212.1.213.119. SSL received a record that exceeded the maximum permissible length. (Error code: ssl_error_rx_record_too_long)

I contacted Hosting 24 and was informed that phpMyAdmin wasn't configured correctly (Duh!! I can't get to the config screen).  Any ideas?

Thanks
Glenn
Avatar of Zephyr ICT
Zephyr ICT
Flag of Belgium image

Are you using Apache or NGINX, can you check settings in the config? "SSLEngine on" and stuff like that under Virtualhost section.

Does it work without https?
Avatar of Dave Baldwin
I would try it with 'http' since I don't believe you can have a valid SSL/TLS cert with just an IP address.
Avatar of breeze351
breeze351

ASKER

I tried it with just 'http' and it reverts back to 'https'.
The server is Apache.  
There is no SSLEngine entry.

Following is the entire config:
------------------------------------------
#
# Based upon the NCSA server configuration files originally by Rob McCool.
#
# 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.
#
# Do NOT simply read the instructions in here without understanding
# what they do.  They're here only as hints or reminders.  If you are unsure
# consult the online docs. You have been warned.  
#
# The configuration directives are grouped into three basic sections:
#  1. Directives that control the operation of the Apache server process as a
#     whole (the 'global environment').
#  2. Directives that define the parameters of the 'main' or 'default' server,
#     which responds to requests that aren't handled by a virtual host.
#     These directives also provide default values for the settings
#     of all virtual hosts.
#  3. Settings for virtual hosts, which allow Web requests to be sent to
#     different IP addresses or hostnames and have them handled by the
#     same Apache server process.
#
# Configuration and logfile names: If the filenames you specify for many
# of the server's control files begin with "/" (or "drive:/" for Win32), the
# server will use that explicit path.  If the filenames do *not* begin
# with "/", the value of ServerRoot is prepended -- so "foo.log"
# with ServerRoot set to "/etc/apache2" will be interpreted by the
# server as "/etc/apache2/foo.log".
#

### Section 1: Global Environment
#
# The directives in this section affect the overall operation of Apache,
# such as the number of concurrent requests it can handle or where it
# can find its configuration files.
#

#
# 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 15

##
## 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
# MaxClients: maximum number of simultaneous client connections
# 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
# 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
# MaxClients: maximum number of simultaneous client connections
# 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
# MaxRequestsPerChild: maximum number of requests a server process serves
<IfModule mpm_event_module>
    StartServers          2
    MaxClients          150
    MinSpareThreads      25
    MaxSpareThreads      75
    ThreadLimit          64
    ThreadsPerChild      25
    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.
#
DefaultType text/plain


#
# 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 all the user configurations:
Include httpd.conf

# Include ports listing
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 \"%{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 README.Debian for details.

# Include generic snippets of statements
Include conf.d/

# Include the virtual host configurations:
Include sites-enabled/
SSLProtocol ALL -SSLv2
SSLCipherSuite ECDHE-RSA-AES256-SHA384:AES256-SHA256:AES256-SHA256:RC4:HIGH:MEDIUM:+TLSv1:!MD5:!SSLv2:+SSLv3:!ADH:!aNULL:!eNULL:!NULL:!DH:!ADH:!EDH:!AESGCM
NameVirtualHost 212.1.213.119:80
-------------------------------------
Glenn
Take a look in the files you find in sites-enabled/ (probably under /etc/apache2/sites-available), the virtual hosts part is what we are looking for.

ssl is configured obviously, since you can see the SSLCipherSuite at the end of the config you posted.

But even if you remoce the https from the url it's still not showing the page apparently, but start with the beginning.
This is what is in langsystems.net.conf
----------------------------------------------------
root@vps:/etc/apache2/sites-available# vi langsystems.net.conf
<VirtualHost 212.1.213.119:80>
SuexecUserGroup "#1000" "#1000"
ServerName langsystems.net
ServerAlias www.langsystems.net
ServerAlias webmail.langsystems.net
ServerAlias admin.langsystems.net
ServerAlias autoconfig.langsystems.net
DocumentRoot /home/langsyst/public_html
ErrorLog /var/log/virtualmin/langsystems.net_error_log
CustomLog /var/log/virtualmin/langsystems.net_access_log combined
ScriptAlias /cgi-bin /home/langsyst/public_html/cgi-bin
ScriptAlias /AutoDiscover/AutoDiscover.xml /home/langsyst/public_html/cgi-bin/autoconfig.cgi
ScriptAlias /Autodiscover/Autodiscover.xml /home/langsyst/public_html/cgi-bin/autoconfig.cgi
ScriptAlias /autodiscover/autodiscover.xml /home/langsyst/public_html/cgi-bin/autoconfig.cgi
DirectoryIndex index.html index.htm index.php index.php4 index.php5
<Directory /home/langsyst/public_html>
Options -Indexes +IncludesNOEXEC +SymLinksifOwnerMatch +ExecCGI
allow from all
AllowOverride All Options=ExecCGI,Includes,IncludesNOEXEC,Indexes,MultiViews,SymLinksIfOwnerMatch
LinksIfOwnerMatch
Type  :quit<Enter>  to exit Vim  
---------------------
Is this the right file?  Here's the directory:
====================
root@vps:/etc/apache2/sites-available# ls
default      demo.langsystems.net.conf  lansco.langsystems.net.conf
default-ssl  langsystems.net.conf
======================
In your apache2.conf file you probably need to add this:

Include /var/www/phpmyadmin/apache.conf

Open in new window


You need to restart apache to make it work ...

If you want to make it more secure you can force phpmyadmin to use ssl only by adding "$cfg['ForceSSL'] = true;" in the "phpmyadmin/config.inc.php" file.

It's a little strange you did it manually though, usually it's just "apt-get install phpmyadmin" and follow the wizard and change the apache config.
Should I remove the directory and run "apt-get" now?  I haven't uses Linux/Unix in over 16 years.
Well, it might be easier that way, depending on what you already configured and such... There's some help here, though you might not need to follow everything to the letter ... Specifically the last part about the default-ssl.conf
I've followed the instructions.  The only thing that doesn't work is "php5enmod mcrypt".   It returns:
-bash: php5enmod: command not found
Can we hire you to set up both phpMyAdmin and dovecot to work with Thunderbird?  I need this done asap.
Hi, sure we can arrange something, send me a message or click the "hire me" button in my profile.
Sent the "Hire Me" button several times and I still haven't heard back.
ASKER CERTIFIED SOLUTION
Avatar of Zephyr ICT
Zephyr ICT
Flag of Belgium image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial