Я скопировал содержимое папки public_html веб-сайта (созданной с помощью Laravel) в папку htdocs, принадлежащую Xampp. Я импортировал базу данных на свой локальный хост, которая включает мои данные для входа. Я также создал файл database_connection и файл index.php, чтобы подключить его к базе данных. Однако, когда я пытаюсь войти в систему с моими данными, которые работают на «реальном» веб-сайте, локальный хост дает мне следующее:
FatalThrowableError в строке 51 MemcachedConnector.php: Класс Memcached не найден
В течение нескольких дней я пытался следовать инструкциям в Интернете (различные форумы, учебные пособия, видео) относительно установки пакета Memcached или различных модификаций в файле конфигурации Apache, но ни один из них мне не помог. Не могли бы вы также подробно объяснить мне решение (шаг за шагом, поскольку я абсолютный новичок в веб-разработке)? Во многих источниках я нашел такие инструкции, как: добавить следующую строку (но не указывать где) или установить этот пакет (но опять же не буду говорить, в каком каталоге и как).
Вы активировали расширение memcached для php
После установки я использовал командную строку, чтобы запустить ее, и она говорит: «Служба memcached была запущена успешно». Однако это все еще не работает.
Вы активировали расширение Memcached в php.ini
Не могли бы вы быть более откровенными? Я не совсем понимаю, что это значит.
PHP имеет расширение для взаимодействия с Memcached. Необходимо добавить в набор php.ini файл extension.
extension = php_memcache.dll [Memcache] memcache.allow_failover = 1 memcache.max_failover_attempts = 20 memcache.chunk_size = 8192 memcache.default_port = 11211 ............ Я добавил этот фрагмент кода после этой строки: extension = php_ftp.dll
Я загрузил memcached 3.0.4 и, похоже, у него есть файл, содержащий именно тот класс Memached, который мне нужен. Но в нем много файлов, которые я точно не знаю, куда их извлечь. Можете ли вы помочь мне в этом? Здесь нет инструкций, и это меня действительно сбивает с толку. Получил отсюда: pecl.php.net/package/memcached/3.0.4
Я также добавил файл php_memcache.dll и добавил его в папку ext, следуя инструкциям отсюда: phpcodez.com/install-memcached-xampp-windows-10 ......... Я также не смог открыть файл memcached.exe, консоль выиграла Я не могу ничего писать, но я использовал командную строку в режиме администратора и мне удалось запустить сервер. Однако мой локальный хост все еще выдает ошибку.
Вы уверены, что использовали TS (Thread Safe) версию php_memcache.dll и одну, скомпилированную с совместимой версией компилятора C, которая использовалась для компиляции PHP?
Извините, я не знаю, как это узнать.
Откуда вы скачали php_memcache.dll? И какая версия PHP у вас установлена
Я не знаю, как найти версию PHP, но я загрузил dll отсюда: codeload.github.com/nono303/PHP7-memcache-dll/zip/master .... У меня также есть ощущение, что это не то, что мне нужно, поскольку в некоторых сообщениях упоминается, что мне нужен memcached вместо memcache, который новее, и ошибка запрашивает у меня класс memcached. Вместо этого я нашел этот пакет memcached: pecl.php.net/package/memcached/3.0.4 ........ и в нем есть файл memcached-api.php, в котором есть класс memcached, но в нем также есть другие файлы, а файл readme остается только тем, что я должен установить libmemcached, но все еще неясно
Вы используете XAMPP, который не показывает вам версию PHP в окнах диспетчера.
У меня есть панель управления, но она не отображается. Я нашел версию на странице, с которой скачал xampp, и это: PHP 7.2.7
Итак, вы загрузили php_memcache.dll, который был скомпилирован для PHP7.2, и он также должен быть _ts_
Так что мне с этим делать? Я не уверен, как проверить правильность DLL или найти правильную. Я тоже не знаю, что такое ts. Поможет ли поиск в Google найти нужный файл DLL?






Вы запустили сервер memcached?