phpmyadmin rzuca 404 na otwarcie

17

Zainstalowałem php5 i phpMyAdmin z Centrum oprogramowania Ubuntu na nowej instalacji Ubuntu 13.04.

po wpisaniu localhost w mojej przeglądarce wyświetla się:

To działa!

To jest domyślna strona internetowa dla tego serwera.

Oprogramowanie serwera WWW działa, ale nie dodano jeszcze żadnych treści.

Więc coś działa.

jeśli następnie wpiszę localhost/phpmyadminlub localhost/phpmyadmin/index.phpstrona zwróci stronę błędu 404, plik nie zostanie znaleziony.

Utworzyłem plik w / var / www o nazwie test.php z jedną linią w nim, <?php phpinfo(); ?>gdy próbuję uzyskać do niego dostęp za pośrednictwem przeglądarki, dostaję 403 zabronione

Wskazuje to na problem uprawnień

z phpMyAdmin zainstalowałem również:

  • Metapakiet serwera HTTP Apache (apache2)
  • Podstawowa obsługa pakietów bibliotek JavaScript (javascript-common)
  • Szybki serwer WWW przy minimalnym zużyciu pamięci (lighttpd)
  • Klient MySQL (klient mysql)
  • Moduł GD dla php5 (php5-gd)
  • Serwer MySQL (serwer mysql)

Podczas instalowania phpMyAdmin nie zadawano mi żadnych pytań, które uznałem za interesujące, ponieważ podczas poprzednich instalacji poproszono mnie o wybranie serwera.

Folder / etc / phpmyadmin ma następującą zawartość:

  • conf.d /
  • config-db.php.ucf-dist

Folder conf.d nie ma zawartości

Czy jest coś, co muszę zainstalować, czego nie mam lub czy jest coś, co mogę zrobić, aby naprawić błędy 404 i 403?

Edytować

właściciele w / 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

i:

...:/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~

po ponownym uruchomieniu usługi apache2 otrzymuję następujące informacje w Terminalu

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!

zmieniłem nazwę phpmyadmin.conf i uruchomiłem

sudo ln -s /etc/phpmyadmin/apache.conf /etc/apache2/conf.d/phpmyadmin.conf

zobacz symbol zepsutego linku w nautilusie:

wprowadź opis zdjęcia tutaj

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

KONIEC ===================================

SimplySimon
źródło
Mam również ten sam typ problemu i rozwiązałem go, zmieniając uprawnienia do katalogu. Ale myślę, że zmiana uprawnień do folderu System nie jest dobrym pomysłem. Możesz utworzyć nowy katalog serwera w domu.
Nabil
2
Czy dodałeś to /etc/apache2/apache2.conf? Uwzględnij /etc/phpmyadmin/apache.conf
Debashish Das

Odpowiedzi:

5

Być może jest to problem z pozwoleniem na apache. Spróbuj wstawić /etc/apache2/sites-available/defaultnastępujące wiersze

<Directory /> AllowOverride All </Directory>

i sprawdź, czy /var/wwwwłaścicielem folderów jestwww-data

================================================== ================================

Zainstaluj serwer mysql: sudo apt-get install mysql-server

Tutaj instalator poprosi o hasło root-serwer mysql

Zainstaluj Apache 2: sudo apt-get install apache2

Przetestuj: localhost (musisz zobaczyć „To działa!” Itp.)

Zainstaluj php5: sudo apt-get install php5

sudo apt-get install libapache2-mod-php5

sudo /etc/init.d/apache2 restart

Testowanie: utwórz plik php_info.php w / var / www /

Treść pliku: <?php phpinfo(); ?>

Zainstaluj moduły php: sudo apt-get install php-pear php5-gd php5-xsl curl libcurl3 libcurl3-dev php5-curl

Połącz Apache 2 i mysql razem: sudo apt-get install libapache2-mod-auth-mysql

Zainstaluj phpmyadmin:

`sudo apt-get install php5-mysql`
`sudo apt-get install phpmyadmin`

Połącz php5 z serwerem mysql:

Edytuj plik /etc/php/apache2/php.ini

Odkomentuj następujący wiersz: extension=mysql.so

Uruchom ponownie apache: service apache2 restart

Spróbuj phpmyadmin: localhost/phpmyadmin/

To działało dla mnie wiele razy.

C1sc0
źródło
Dzięki za to, że zmieniła dotychczasowy AllowOverride noneze AllowOverride Allbez zmian, nadal 404. Jak mogę się dowiedzieć właściciela folderu lub pliku?
SimplySimon,
Na przykład zls -lh
C1sc0
ls -lhraportydrwxr-xr-x 2 root root 4.0K Jun 7 21:04 www
SimplySimon,
Spróbuj edytować defaultplik w sites-availablefolderze i umieść na dole, po </VirtualHost>tymAlias phpmyadmin /usr/share/phpmyadmin
C1sc0
Dodałem szczegóły na dole pytania. chown tworzy wszystkie pliki na www www-data
SimplySimon
38

Wydaje mi się, że zapomniałeś zaznaczyć apachepodczas instalacji phpmyadmin. Możesz sprawdzić, czy tak jest, sprawdzając obecność /etc/apache2/conf.d /phpmyadminpliku.

Możesz ponownie skonfigurować phpmyadmin za pomocą następującego polecenia:

sudo dpkg-reconfigure phpmyadmin

Zobaczysz następujący ekran:

Wybierz serwer WWW

Zaznacz apache (używając spacji) i tabuluj, aby OK.

Nemo
źródło
Dostaję ln: failed to create symbolic link ‘/etc/apache2/conf.d/phpmyadmin.conf’: File existspo zakończeniu tego. To wciąż nie działa!
SimplySimon,
Spróbuj zrestartować apache ( sudo service apache2 restart)
Nemo
7
Wielkie dzięki! Zapomniałem zaznaczyć apache2 podczas instalacji z tasksel.
nahtnam
6
Jesteś złoty Dlaczego domyślnie nie jest zaznaczone i dlaczego pozwala ci kontynuować bez dokonywania wyboru?
Miro,
1
Podczas pierwszej instalacji nacisnąłem <ENTER> zamiast <SPACE>, aby wybrać Apache2, a okno zniknęło.
Suraj,
7

Wiem, że jest to bardzo stary problem, więc jeśli napotkasz taki błąd, a powyższe nie pomoże, może to:

Użyj tego polecenia, sudo nano /etc/apache2/apache2.confaby otworzyć plik, nanoa następnie dodaj następujący wiersz:

Include /etc/phpmyadmin/apache.conf

Zapisz i zamknij. Następnie uruchom ponownie serwer. To powinno działać.

AntonyMN
źródło
To zadziałało dla mnie! Dzięki
athi
0

Może to być dość oczywiste, ale czy istnieje plik /etc/phpmyadmin/apache.conf ?. Jeśli tak, spróbuj pozwolić programowi dpkg wykonać całą pracę. link ręcznie utworzony i uruchomiony ponownie:

sudo dpkg-reconfigure -plow phpmyadmin

martintama
źródło