Я пытаюсь настроить сервер Amazon для отображения моих файлов php для финала одного из моих классов. Я последовал за этот учебник для его настройки, и когда я пытаюсь запустить свой код, я получаю «Неустранимая ошибка: класс 'PDO' не найден».
Я пробовал бежать sudo yum install php-pdo
но он обнаруживает ошибки, говоря Error: php56-common conflicts with php-common-5.3.29-1.8.amzn1.x86_64
Я читал некоторые вещи, в которых говорится об изменении файла php.ini, но я не знаю, как это сделать.
Я также пробовал это, используя mysql_connect
command и получите аналогичную ошибку.
РЕДАКТИРОВАТЬ: Я попытался удалить php5.3, и он говорит, что он не установлен, поэтому я удалил php * и установил php56, но все равно получаю то же самое, что и раньше, когда пытался его установить. В качестве примечания, если есть более простой способ запустить код на сервере, он не обязательно должен быть на инстансе Amazon.
Это случилось и со мной. Дело в том, что amazon пытается установить php / mysql более старых версий. вам нужно указать, какую версию вам нужно установить. чтобы установить php-mysql для php 5.6, выполните эту команду. sudo yum -y install php56-mysqlnd
Вы можете установить более старые версии, если хотите.
Сначала проверьте, как скомпилирован PHP, просто создайте новый файл .php, содержащий только:
<?php echo phpinfo(); ?>
Запустите этот файл в своем браузере, и вверху он сообщит вам, был ли PHP скомпилирован с такими флагами, как '--enable-pdo = shared', '--with-pdo-mysql = shared', '--with-pdo- sqlite = общий '
Если он был скомпилирован, вам действительно нужно включить его в файле php.ini. Вы можете найти, где находится этот файл:
find / -name 'php.ini'
Отредактируйте этот файл с помощью:
vi /path/to/that/php.ini
Затем убедитесь, что он содержит:
extension=pdo.so
extension=pdo_mysql.so
Не забудьте перезапустить ваш веб-сервер / php, чтобы это изменение вступило в силу.