Всем привет!
Спустя некоторое время виндузятничества, я снова вернулся к своей любимой операционной системе - Linux Mint 8.
Так как я веб-разработчик, то мне необходим локальный веб-сервер с поддержкой PHP5 и MySQL.
Основной целью этого поста является желание поделиться опытом решения некоторых проблем с LAMP, но пост был бы неполноценным, если бы я не написал о том, как его (LAMP) установить. После выполнения этих команд, у вас будут Apache, PHP5 с некоторыми дополнениями, которые могут вам рано или поздно понадобиться, и MySQL:
-
sudo aptitude install apache2
-
sudo aptitude install mysql-client mysql-server
-
sudo aptitude install php5 php5-common php5-dev php5-cli php5-cgi php5-json php5-apc php5-mcrypt libapache2-mod-php5 php5-mysql
-
sudo /etc/init.d/apache2 restart
А теперь топайте по адресу http://localhost/ и радуйтесь надписи "It works!".
Если все ок, то в папке /var/www/ создайте файл phpinfo.php:
- sudo touch phpinfo.php
Откройте его для редактирования:
- sudo gedit /var/www/phpinfo.php
И напишите в нем:
-
<?php
-
?>
После сохранения можно проверить, работает ли php, если перейти по адресу http://localhost/phpinfo.php
Если вы видите информацию о том, какая версия php установлена и так далее, то у вас все ок, а если нет - читайте дальше.
Думаю, что большинству будет полезен установленный phpmyadmin:
- sudo aptitude install phpmyadmin
Он должен работать, если перейти по адресу: http://localhost/phpmyadmin/
А теперь проблемы
I. Одна из самых типичных проблем, возникающих после установки LAMP - не работает PHP. Симптомы: браузер предлагает скачать php файл либо показывает его содержимое.
Возможные способы лечения:
1) Перезагрузите apache:
- sudo /etc/init.d/apache2 restart
2) Если не помогло, то перезагрузите систему:
- sudo reboot now
3) Если второй пункт тоже не помог, то, возможно, что у вас установлены несовместимые модули для апача. У меня, например, был установлен php5-apc и вместе с ним я установил php5-xcache, после чего php перестал работать. Чтобы узнать о подобных конфликтах, надо покопаться в логах Apache.
- gedit /var/log/apache2/error.log
Вот так выглядела строка, которая помогла мне понять, в чем причина:
-
[Tue Feb 08 22:09:42 2011] [notice] seg fault OR similar nasty error detected IN the parent process
-
PHP Warning: Cannot LOAD module 'XCache' because conflicting module 'apc'
-
IS already loaded IN Unknown ON line 0
Я решил просто удалить php5-xcache, так как он был установлен только в тестовых целях:
-
sudo aptitude purge php5-xcache
4) Возможно, что модуль php5 не подгружен в апач:
-
sudo a2enmod php5
Обычно, на этом проблемы заканчиваются и все начинает работать... хотя..
II. Второй очень распространенной проблемой является то, что после установки phpmyadmin, по запросу http://localhost/phpmyadmin/ вы получаете ошибку. В интернете есть куча предложений по тому, как это исправить, но мне они никогда не помогали, кроме вот этого:
Открываем для редактирования apache2.conf
-
sudo gedit /etc/apache2/apache2.conf
и добавляем в конец слудющую строку:
- Include /etc/phpmyadmin/apache.conf
После сохранения переходим по http://localhost/phpmyadmin/ и, вероятнее всего, радуемся работающему phpmyadmin'у! =)
Все команды написаны по памяти, поэтому если заметили мисстайп или что-то еще, то подмигните ;)
На этом пока все, друзья! Надеюсь, что кому-нибудь будет полезен этот пост и желаю всем удачи!