41

以下のエラーを修正するにはどうすればよいですか?

PHP インストールに、WordPress に必要な MySQL 拡張機能がないようです。

NAS を telnet 接続で使用しています。

FFP0.7をインストールしました

My php.iniis in:ffp/etc/php.iniで、役に立つと思ったものはすべてコメント解除しました。

以下は私のphp.iniファイルの一部です。

;If you wish to have an extension loaded automatically, use the following
; syntax:
;
;   extension=modulename.extension
;
; For example, on Windows:
;
extension=msql.dll
;
; ... or under UNIX:
;
extension=msql.so
;
; ... or with a path:
;
extension=/ffp/lib/extensions/no-debug-non-zts-20100525/mysql.so
;


extension=php_mysql.dll
extension=php_mysqli.dll
extension=php_pdo_mssql.dll
extension=php_pdo_mysql.dll
extension=php_pdo_oci.dll
extension=php_pdo_odbc.dll
extension=php_pdo_pgsql.dll
extension=php_pdo_sqlite.dll
extension=php_pgsql.dll
extension=pdo.so
extension=pdo_sqlite.so
extension=sqlite.so
extension=pdo_mysql.so

未解決の問題は、 で実行するとphpinfo()、モジュール MySQLi がアクティブ化されているのに MySQL がアクティブ化されていないことです。

MySQL は、PHP および Lighttpd Web サーバーと同様に期待どおりに動作します。

私も同様にphpmyadminが機能しています。

Zyxel NSA310に乗っています。

また、を起動するとmysqld、ルートから次へのショートカットが作成ffp/opt/mysql..されます。NAS を再起動するたびに、ショートカットが削除されます。

誰かがこれのためのトリックを知っているかもしれませんか?

4

27 に答える 27

45

最後に解決策を見つけました まず、MySQLサーバーが実行されていることを確認してください。シェル プロンプトで次のコマンドを入力します。

/etc/init.d/mysql status

MySQL が実行されていない場合は、次のように入力します。

/etc/init.d/mysql start

MySQL がインストールされていない場合は、次のコマンドを入力して MySQL サーバーをインストールします。

apt-get install mysql-server

php5 用の MySQL モジュールがインストールされていることを確認します。

dpkg --list | grep php5-mysql

php5-mysql モジュールをインストールするには、次のように入力します。

apt-get install php5-mysql

次に、Apache2 Web サーバーを再起動します。

/etc/init.d/apache2 restart

于 2014-04-01T07:58:30.983 に答える
33

The php mysql api is deprecated. It's kaput --- going away -- not to be used, finito.

If you have a modern version of PHP (> 5.6) then Wordpress should automatically switch to make use of mysqli. That should be your first attempt.

If you can not update your php, rather than attempting to resurrect something that php no longer supports, just patch your wordpress: http://wordpress.org/plugins/mysqli/

If you are already running a modern version of PHP, then this is likely because you don't have the mysqli extension in your version of PHP. You can check this using php -i from your server OS, or make a page with <php phpinfo(); and navigate to that page with your browser. There will be section for all the extensions.

If you don't have the mysqli extension installed, follow the instructions from the official PHP documentation.

于 2013-07-17T08:23:21.803 に答える
6

cPanel (Godaddy、Reseller club、Hostgator、または共有ホスティング) で共有 Linux ホスティングを使用している場合は、次のことを試してください。

[ソフトウェアとサービス] タブ -> PHP バージョンの選択 -> PHP セレクター | 拡張子

すべての MySQL 関連の拡張子にチェックを入れて保存すれば完了です。添付画像をご確認ください。

cPanel の拡張機能を示す画像

于 2017-01-05T16:57:10.377 に答える
5

PHP のバージョンをアップグレードするときは、apache2 が続くことを確認してください。Apache がまだ古い php バージョンを使用していることを示す phpinfo() ファイルを作成できます。

この場合、a2dismod php-old-version および a2enmon php-mod-version コマンドを使用する必要があります。

例:

ubuntu では、/etc/apache2/mods-enabled または phpinfo ファイルで示されるバージョンから古いバージョンを取得し、/etc/apache2/mods-available から新しいバージョンを取得します。

> sudo a2dismod php5.6
> sudo a2enmod php7.1
> sudo service apache2 restart
于 2017-05-09T16:36:13.550 に答える
3

Wordfence プラグインがインストールされている場合は、.htaccess ファイルの suPHP_ConfigPath 行をコメントアウトすると、Web サイトが復活することがわかりました。

# Wordfence WAF
#<IfModule mod_suphp.c>
#   suPHP_ConfigPath '/home/a1614947/public_html'
#</IfModule>

これもWordfenceに報告しました。

于 2016-07-02T13:18:21.747 に答える
0

私(ubuntu 16.04)にとって勝者は次のとおりでした:

sudo apt install php7.0-mysql
于 2019-06-13T00:58:25.480 に答える
0

PHP バージョン 7.3.x を実行している Oracle Linux 7.x ではsudo yum install php-mysqlnd、欠落している PHP 用の MySQL 拡張機能をインストールするために実行する必要があります。

変更を有効にするために、PHP またはサーバーを再起動することを忘れないでください。

于 2019-05-26T19:12:59.987 に答える