redis causes errors in phpmyadmin - php

Today I have a problem with phpmyadmin and redis, meaning that when I try to view the phpmyadmin management page the following error appears:
phpMyAdmin - Error
Error during session start; please check your PHP and / or webserver log file and configure your PHP installation properly. Also ensure that cookies are enabled in your browser.
session_start (): Cannot find save handler 'redis' - session startup failed.
Note that if I go to the terminal, and do the command redis-cli everything works perfectly.
Why is this happening?

I had the same error.
The problem was here in the php.ini file.
I had to copy the following into the php.ini file:
session.save_path= "tcp://host1:6379?weight=1, tcp://host2:6379?weight=2&timeout=2.5, tcp://host3:6379?weight=2&read_timeout=2.5"
The solution was to replace host1, host2, and host3 with localhost:
session.save_path= "tcp://localhost:6379?weight=1, tcp://localhost:6379?weight=2&timeout=2.5, tcp://localhost:6379?weight=2&read_timeout=2.5"

Related

Mamp Pro to phpMyAdmin gives blank page ...?

The URL of the blank page > http://localhost:8888/phpMyAdmin5/?lang=en&language=English
Another try via > http://localhost:8888/MAMP/ to MySQL (phpMyAdmin) > http://localhost:8888/phpMyAdmin5/ ... also a blank page ... !?
Mamp Pro 6.x
PHP 8.x
MacOS 12.6
What's happening here and can it be solved?
There could be many factors for the issue. First, clear your browser cache and try it again. If it does not help, I'd recommend trying following:
Examine the error logs: Inspect the Apache and PHP error logs for any
errors. By selecting the "Open Log" button in the "Apache" or "PHP"
tab of the MAMP interface, you can access the error logs.
Examine the configuration options: Make the "config.inc.php" file's
configuration values are accurate. The "phpMyAdmin" directory in the
MAMP application folder contains this file. The host, port, and login
credentials may need to be changed, among other variables.
Time limits: Increase the max execution time and memory limit values in the php.ini file.
If none of these help, you might want to reinstall MAMP and see.

Bitnami unable to enable Curl

i AM USING A aws lightsail instance with a Bitnami Apache2 Lampstack setup on it.
My issue is I am unable to get php curl enabled. I seem to have a bunch of php.ini files all over the server in diffiferent locations. So I edited all of them removing the ; from the line that read extension=curl. I then restarted the instance. However my php file is still giving me the error saying
caught Exception: Shippo needs the CURL PHP extension.
When I run a phpinfo() I see my path to the ini file is /etc/php/8.0/apache2/php.ini
However when I do a which php command I am giving a path like this /opt/bitnami/php/bin/php
when I do a php -v I am also seeing it say PHP 7.4.27 so my php info file seems to say I am using php7.8 and my CLI feels i am using php7.4 which could be part of my issue.
Any suggestions on how to fix this? my other issue is I am having a hard time getting to the path /etc/php/8.0/apache2/php.ini I simply can not find a folder with 8.0 in it

PHP Error logging on Apache HTTPD on Windows: What is wrong with this configuration that it is not logging errors?

I am getting a blank screen and nothing in the error logs for a php program I am trying to get up and running (it happens to be yourls). What do I need to do to get error logging enabled or to otherwise get an indicate of why the page is not loading (I know there are multiple postings on this but none of the fixes suggested in this posts seems to generate any output and don't seem to work for this specific implementation)?
I'm running php from this install: php-8.0.0-nts-Win32-vs16-x64.zip
I'm running Apache HTTPD from this install: httpd-2.4.46-o111i-x64-vc15.zip
Turns out this was a behavior of the yourls software I was trying to run. It had a flag that turned error logging/messaging off AND it was not compatable with php 8. I switched to php 7 and switched to the php.ini-development config (by renaming it to php.ini) and I am now seeing error messages (the driver for the database is missing).

Wordpress installation - php and mysql are not talking to each other to access database?

I'm trying to get a wordpress local install working on my Mac.
I've recently set up a database, username and password using the MySQL client as per the instructions in the wordpress codex. That part is ok.
When I go to the local site on my computer I'm prompted by wordpress to set up the wp-config.php file. Putting in the same details that definitely work with the MySQL client returns an error.
Manually updating these details in the 'wp-config-sample.php' file and renaming it as 'wp-config.php' also doesn't work - I'm now greeted with a big bold message: "Error establishing a database connection".
From what I can gather, php and mysql are not communicating with each other properly.
I've changed the apache 2 configuration file found in 'etc/apache2/httpd.conf' and uncommented the line which loads the php5 module: LoadModule php5_module libexec/apache2/libphp5.so
and restarted the apache server. This has still not fixed my problem. I'm stuck on what to do next... help appreciated please!
It's been fixed now.
php was looking in the wrong place for the mysql.sock file, and couldn't communicate with the mysql database, meaning wordpress couldn't be set up.
On the command line I typed
ps aux | grep mysql
to bring up as much info about mysql that I could. From this I saw that the mysql socket on my computer is being used at /tmp/mysql.sock
Meanwhile, in the "wp-config.php" file, I changed the line define('WP_DEBUG', false); to define('WP_DEBUG', true); and refreshed my web browser that was showing my localhost setup. This now said a lot more info than "Error establishing a database connection" - infact I could see that the mysql.sock was not configured correctly at all.
Creating a 'phpinfo.php' file with just the single line of code <?php phpinfo(); ?> was the pivotal turning point for me.
Putting that 'phpinfo.php' file in my localhost directory and then viewing it from my web browser not only definitely confirmed that the mysql.sock file was not configured properly, but it also showed where the configurations were being loaded from on my machine: '/private/etc/php.ini'
The next thing I did was open up the 'php.ini' file in a text editor and doing a quick find and replace to update the correct location of mysql.sock.
Finally, a restart of the local apache server needed to be done to fully update all the new settings that I'd been fiddling about with.
sudo apachectl restart
Now everything works fine!
The Error-Message "Error establishing a database connection" indicates clearly, that the php-script can not establish the connection. This can have one of the following reasons:
Your host in the wp-config.php is not correct.
The mysql-server does not listen on that host
The user you set up in the mysql has no privileges to connect the way you are trying
The firewall blocks the access of the php-script to your mysql-host
Try to connect the database with the same settings of your wordpress using Sequel Pro (or any other GUI to connect a mysql database). If the connection works, the problem 2. and 3. isn't your problem.
Look in your firewall-log to make sure 4. is also not your problem.
If all problems are excluded (even 1. after a final check), try to run something like phpMyAdmin to connect your database, to make sure your php-installation has the needed drivers.

identify mysql problem

I've write a web-application in PHP which has 30 tables+views. From time to time my application doesn't work and think this is related to the mysql db.
Unfortunately I can't see the errors from the browser on that server because php.ini says so. Also when I try to connect to mysql db using phpMyAdmin the connection fails when I try to select my DB.
How can i see which is the problem to my mysql DB. It works from time to time but I don't understand why.
You could look in the MySQL error log - it's under /var/log/mysqld.log on my setup...
Your PHP errors may be getting sent to another log file - try the Apache / IIS error log (global or for the particular vhost, depending on your config for Apache - I can't say for IIS) or to the system log - /var/log/messages

Categories