phpmyadmin throws a 404 on opening
I have installed php5 and phpMyAdmin from the Ubuntu Software Centre on a fresh install of Ubuntu 13.04.
when I enter localhost in my browser the following is displayed:
It works!
This is the default web page for this server.
The web server software is running but no content has been added, yet.
So something is working.
if I then type in localhost/phpmyadmin
or localhost/phpmyadmin/index.php
the page returns a 404 error page, file not found.
I created a file in /var/www called test.php with one line in it <?php phpinfo(); ?>
when I try to access it through my browser, I get 403 Forbidden
This points to a permissions problem
with phpMyAdmin I also installed:
- Apache HTTP Server metapackage (apache2)
- Base support for JavaScript library packages (javascript-common)
- Fast webserver with minimal memory footprint (lighttpd)
- MySQL Client (mysql-client)
- GD module for php5 (php5-gd)
- MySQL Server (mysql-server)
When installing phpMyAdmin, I was not asked any questions, which I found interesting as on previous installs, I have been asked to choose a server.
The folder /etc/phpmyadmin has the following content:
- conf.d/
- config-db.php.ucf-dist
The folder conf.d has no content
Is there something I need to install which I haven't or is there something I can do to fix the 404 & 403 errors?
Edit
owners in /var
:/var$ ls -lh
total 48K
drwxr-xr-x 2 root root 4.0K Jun 9 12:16 backups
drwxr-xr-x 21 root root 4.0K Jun 9 13:28 cache
drwxrwsrwt 2 root whoopsie 4.0K Jun 9 16:01 crash
drwxr-xr-x 73 root root 4.0K Jun 8 19:24 lib
drwxrwsr-x 2 root staff 4.0K Apr 19 10:03 local
lrwxrwxrwx 1 root root 9 Jun 9 16:00 lock -> /run/lock
drwxr-xr-x 20 root root 4.0K Jun 9 16:01 log
drwxrwsr-x 2 root mail 4.0K Apr 24 18:01 mail
drwxrwsrwt 2 root whoopsie 4.0K Apr 24 18:05 metrics
drwxr-xr-x 2 root root 4.0K Apr 24 18:01 opt
lrwxrwxrwx 1 root root 4 Jun 9 16:00 run -> /run
drwxr-xr-x 10 root root 4.0K Jun 8 19:41 spool
drwxrwxrwt 4 root root 4.0K Jun 9 16:25 tmp
drwxr-xr-x 2 www-data www-data 4.0K Jun 7 21:04 www
and:
...:/var$ ls -lh /var/www
total 12K
-rw-r--r-- 1 www-data www-data 177 Jun 7 20:30 index.html
-rw-r--r-- 1 www-data www-data 3.5K Jun 7 20:30 index.lighttpd.html
-rw-r--r-- 1 www-data www-data 20 Jun 7 21:04 test.php
-rw-r--r-- 1 www-data www-data 0 Jun 7 21:04 test.php~
on restarting the apache2 service I get the following in Terminal
simon@simon-VGN-AR71E:~$ sudo service apache2 restart
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 'configtest' failed.
The Apache error log may have more information.
...fail!
i renamed phpmyadmin.conf link and ran
sudo ln -s /etc/phpmyadmin/apache.conf /etc/apache2/conf.d/phpmyadmin.conf
see the broken link symbol in nautilus:
simon@simon-VGN-AR71E:~$ ls -lh /etc/apache2/conf.d
total 16K
-rw-r--r-- 1 root root 269 Jul 16 2012 charset
lrwxrwxrwx 1 root root 45 Jun 7 21:14 javascript-common.conf -> /etc/javascript-common/javascript-common.conf
-rw-r--r-- 1 root root 3.3K Jul 16 2012 localized-error-pages
-rw-r--r-- 1 root root 143 Jul 16 2012 other-vhosts-access-log
lrwxrwxrwx 1 root root 28 Jun 9 17:28 phpmyadmin.conf -> ../../phpmyadmin/apache.conf
-rw-r--r-- 1 root root 1.7K Jul 16 2012 security
END===================================
It seems to me that you forgot to tick apache
during the phpmyadmin installation screen. You can check if that is the case by checking for the presence of /etc/apache2/conf.d
/phpmyadmin
file.
You can reconfigure phpmyadmin with the following command:
sudo dpkg-reconfigure phpmyadmin
You will see the following screen:
Tick apache (using spacebar), and tab to OK.
I know this is a very old problem, so if you encounter such an error and the above does not help you, this might:
Use this command sudo nano /etc/apache2/apache2.conf
to open the file using nano
then add the following line:
Include /etc/phpmyadmin/apache.conf
Save and close. Then restart the server. This should work.
Maybe it is an apache permission problem. Try to put in your /etc/apache2/sites-available/default
the following lines
<Directory />
AllowOverride All
</Directory>
and check that the /var/www
folders owner is www-data
==================================================================================
Install mysql server: sudo apt-get install mysql-server
Here the installer will ask the mysql-server root password
Install apache 2: sudo apt-get install apache2
Test it: localhost (You must see "It works!" etc)
Install php5: sudo apt-get install php5
sudo apt-get install libapache2-mod-php5
sudo /etc/init.d/apache2 restart
Testing it: create the file php_info.php in /var/www/
The content of the file: <?php phpinfo(); ?>
Install php modules: sudo apt-get install php-pear php5-gd php5-xsl curl libcurl3 libcurl3-dev php5-curl
Connect apache 2 and mysql together: sudo apt-get install libapache2-mod-auth-mysql
Install phpmyadmin:
`sudo apt-get install php5-mysql`
`sudo apt-get install phpmyadmin`
Connect php5 with mysql server:
Edit the file /etc/php/apache2/php.ini
Uncomment the following line: extension=mysql.so
Restart apache: service apache2 restart
Try phpmyadmin: localhost/phpmyadmin/
This worked for me many times.