phpmyadmin бросает 404 на открытии

17

Я установил php5 и phpMyAdmin из Центра программного обеспечения Ubuntu в новой версии Ubuntu 13.04.

при вводе localhost в моем браузере отображается следующее:

Оно работает!

Это веб-страница по умолчанию для этого сервера.

Программное обеспечение веб-сервера работает, но контент еще не добавлен.

Так что-то работает.

если я потом наберу localhost/phpmyadminили localhost/phpmyadmin/index.phpстраница вернет страницу ошибки 404, файл не найден.

Я создал файл в / var / www с именем test.php с одной строкой, <?php phpinfo(); ?>когда я пытаюсь получить к нему доступ через браузер, я получаю 403 Запрещено

Это указывает на проблему с разрешениями

с phpMyAdmin я также установил:

  • Метапакет HTTP-сервера Apache (apache2)
  • Базовая поддержка пакетов библиотеки JavaScript (javascript-common)
  • Быстрый веб-сервер с минимальным объемом памяти (lighttpd)
  • MySQL Client (mysql-клиент)
  • GD модуль для php5 (php5-gd)
  • MySQL Server (mysql-сервер)

При установке phpMyAdmin мне не задавали никаких вопросов, которые показались мне интересными, так как в предыдущих установках меня просили выбрать сервер.

Папка / etc / phpmyadmin имеет следующее содержимое:

  • conf.d /
  • конфиг-db.php.ucf-расстояние

В папке conf.d нет содержимого

Есть ли что-то, что мне нужно установить, чего у меня нет или что я могу сделать, чтобы исправить ошибки 404 и 403?

редактировать

владельцы в / вар

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

и:

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

при перезапуске службы apache2 я получаю следующее в терминале

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!

я переименовал ссылку phpmyadmin.conf и побежал

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

увидеть символ неработающей ссылки в 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 ===================================

SimplySimon
источник
Я также столкнулся с такой же проблемой и решил ее, изменив права доступа к каталогу. Но я думаю, что изменение разрешения папки «Система» не очень хорошая идея. Вы можете создать новый каталог сервера внутри дома.
Набиль
2
Вы добавили это в /etc/apache2/apache2.conf? Включите /etc/phpmyadmin/apache.conf
Das

Ответы:

5

Может быть, это проблема разрешения Apache. Попробуйте указать в /etc/apache2/sites-available/defaultследующих строках

<Directory /> AllowOverride All </Directory>

и убедитесь, что /var/wwwвладелец папкиwww-data

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

Установите сервер MySQL: sudo apt-get install mysql-server

Здесь установщик спросит пароль root для mysql-сервера.

Установите Apache 2: sudo apt-get install apache2

Проверьте это: localhost (Вы должны увидеть «Это работает!» И т. Д.)

Установите php5: sudo apt-get install php5

sudo apt-get install libapache2-mod-php5

sudo /etc/init.d/apache2 restart

Тестирование: создайте файл php_info.php в / var / www /

Содержание файла: <?php phpinfo(); ?>

Установите модули php: sudo apt-get install php-pear php5-gd php5-xsl curl libcurl3 libcurl3-dev php5-curl

Соедините apache 2 и mysql вместе: sudo apt-get install libapache2-mod-auth-mysql

Установите phpmyadmin:

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

Подключите php5 к серверу mysql:

Редактировать файл /etc/php/apache2/php.ini

Раскомментируйте следующую строку: extension=mysql.so

Перезапустите Apache: service apache2 restart

Попробуйте phpmyadmin: localhost/phpmyadmin/

Это сработало для меня много раз.

C1sc0
источник
Спасибо за это, я изменил существующий AllowOverride noneс AllowOverride Allкаких - либо изменений, по- прежнему 404. Как узнать владельца папки или файла?
SimplySimon
Например сls -lh
C1sc0
ls -lhотчетыdrwxr-xr-x 2 root root 4.0K Jun 7 21:04 www
SimplySimon
Попробуйте отредактировать ваш defaultфайл в sites-availableпапке и поставить нижнюю, после </VirtualHost>следующегоAlias phpmyadmin /usr/share/phpmyadmin
C1sc0
Я добавил детали в конец вопроса. chown делает все файлы в www www-data
SimplySimon
37

Мне кажется, что вы забыли поставить галочку apacheна экране установки phpmyadmin. Вы можете проверить, так ли это, проверив наличие /etc/apache2/conf.d /phpmyadminфайла.

Вы можете перенастроить phpmyadmin с помощью следующей команды:

sudo dpkg-reconfigure phpmyadmin

Вы увидите следующий экран:

Выберите веб-сервер

Отметьте apache (используя пробел) и нажмите OK.

Nemo
источник
Я получаю ln: failed to create symbolic link ‘/etc/apache2/conf.d/phpmyadmin.conf’: File existsпосле того, как я закончу это. Это все еще не работает!
SimplySimon
Попробуйте перезапустить apache ( sudo service apache2 restart)
Nemo
7
Большое спасибо! Я забыл поставить галочку в apache2 во время установки с помощью tasksel.
Нахтнам
6
Ты золотой. Почему это не отмечено по умолчанию и почему оно позволяет вам продолжить, не делая выбора?
Миро
1
Во время первоначальной установки я нажимал <ENTER> вместо <SPACE>, чтобы выбрать Apache2, и окно исчезло.
Сурадж
7

Я знаю, что это очень старая проблема, поэтому, если вы столкнулись с такой ошибкой, и вышеописанное не поможет вам, это может быть:

Используйте эту команду, sudo nano /etc/apache2/apache2.confчтобы открыть файл, используя, nanoзатем добавьте следующую строку:

Include /etc/phpmyadmin/apache.conf

Сохранить и закрыть. Затем перезапустите сервер. Это должно работать.

AntonyMN
источник
Это сработало для меня! Спасибо
Афи
0

Это может быть довольно очевидно, но существует ли /etc/phpmyadmin/apache.conf? Если это так, попробуйте позволить dpkg сделать всю работу. rm ссылка, которую вы создали вручную и снова запустили:

sudo dpkg-reconfigure -plow phpmyadmin

martintama
источник