2

我正在为我遇到的这个问题撕毁我的头发。我正在将 Wordpress 安装到我的NearlyFreeSpeech网络服务器上。我已经设置了我的 MySQL 数据库等,它工作得很好。我已经设置了一个名为的用户wpuser和一个名为的数据库wpuser,并赋予wpuser了创建/删除等适当的权限。

我已经wp-config.php准确地编辑了 NearlyFreeSpeech 常见问题解答列表的方式。

点击安装按钮后,我收到如下错误:

WordPress database error: [Can't create/write to file '/var/wordpress/wp_users.MYI' (Errcode: 2)]`

然后是长 MySQL 查询。除了服务器上的公共/私人文件夹之外,我无权访问任何其他内容,所以我不知道为什么 Wordpress 试图将自己安装到 var 文件夹中,或者至少访问一个不存在的文件夹。

一点点搜索建议我给 Wordpress 一个临时目录,我使用以下代码完成了该目录:

if ( !defined('WP_TEMP_DIR') )
    define('WP_TEMP_DIR', dirname(__FILE__) . '/tmp/');

关于如何让这个东西实际安装的任何建议?


我的wp-config.php

<?php
/**
 * The base configurations of the WordPress.
 *
 * This file has the following configurations: MySQL settings, Table Prefix,
 * Secret Keys, WordPress Language, and ABSPATH. You can find more information
 * by visiting {@link http://codex.wordpress.org/Editing_wp-config.php Editing
 * wp-config.php} Codex page. You can get the MySQL settings from your web host.
 *
 * This file is used by the wp-config.php creation script during the
 * installation. You don't have to use the web site, you can just copy this file
 * to "wp-config.php" and fill in the values.
 *
 * @package WordPress
 */

// ** MySQL settings - You can get this info from your web host ** //
/** The name of the database for WordPress */
define('DB_NAME', 'wpuser');

/** MySQL database username */
define('DB_USER', 'wpuser');

/** MySQL database password */
define('DB_PASSWORD', "passwordhere");

/** MySQL hostname */
define('DB_HOST', 'nescience.db');

/** Database Charset to use in creating database tables. */
define('DB_CHARSET', 'utf8');

/** The Database Collate type. Don't change this if in doubt. */
define('DB_COLLATE', '');



if ( !defined('WP_TEMP_DIR') )
    define('WP_TEMP_DIR', dirname(__FILE__) . '/tmp/');





/**#@+
 * Authentication Unique Keys and Salts.
 *
 * Change these to different unique phrases!
 * You can generate these using the {@link https://api.wordpress.org/secret-key/1.1/salt/ WordPress.org secret-key service}
 * You can change these at any point in time to invalidate all existing cookies. This will force all users to have to log in again.
 *
 * @since 2.6.0
 */
define('AUTH_KEY',         'put your unique phrase here');
define('SECURE_AUTH_KEY',  'put your unique phrase here');
define('LOGGED_IN_KEY',    'put your unique phrase here');
define('NONCE_KEY',        'put your unique phrase here');
define('AUTH_SALT',        'put your unique phrase here');
define('SECURE_AUTH_SALT', 'put your unique phrase here');
define('LOGGED_IN_SALT',   'put your unique phrase here');
define('NONCE_SALT',       'put your unique phrase here');

/**#@-*/

/**
 * WordPress Database Table prefix.
 *
 * You can have multiple installations in one database if you give each a unique
 * prefix. Only numbers, letters, and underscores please!
 */
$table_prefix  = 'wp_';

/**
 * WordPress Localized Language, defaults to English.
 *
 * Change this to localize WordPress. A corresponding MO file for the chosen
 * language must be installed to wp-content/languages. For example, install
 * de_DE.mo to wp-content/languages and set WPLANG to 'de_DE' to enable German
 * language support.
 */
define('WPLANG', '');

/**
 * For developers: WordPress debugging mode.
 *
 * Change this to true to enable the display of notices during development.
 * It is strongly recommended that plugin and theme developers use WP_DEBUG
 * in their development environments.
 */
define('WP_DEBUG', false);

/* That's all, stop editing! Happy blogging. */

/** Absolute path to the WordPress directory. */
if ( !defined('ABSPATH') )
    define('ABSPATH', dirname(__FILE__) . '/');

/** Sets up WordPress vars and included files. */
require_once(ABSPATH . 'wp-settings.php');
4

3 回答 3

1

我知道这很旧,但我认为回答会有所帮助。我遵循了这个建议,并且效果很好:

https://members.nearlyfreespeech.net/YOURMEMBERNAME/support/wordpress

另请参阅:

http://www.reddit.com/r/Wordpress/comments/18e5n9/anyone_use_nearlyfreespeech_as_a_webdev_babynoob/

概括:

touch .htaccess
chgrp web .htaccess
chmod 664 .htaccess
chgrp -R web *
find . -type d -exec chmod 775 {} \;
find . -type f -exec chmod 664 {} \;

您的 wp-config.php 文件看起来不错。您的数据库名称看起来正确。

你是用 wp-cli 下载 wordpress 的吗?这就是我所做的,而且效果很好。

curl -O https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar    
php wp-cli.phar core download

然后我调用了这个:

http://MYSITENAME.nfshost.com/wp-admin/install.php

这一切都奏效了。

于 2014-06-12T19:23:00.813 回答
0

nescience.db 不是数据库服务器的地址。它无法解析。您的数据库的 URL 位于 PHP My Admin 的顶部。


编辑:

一些托管公司将 MySql 安装在与 Apache 相同的实例上。值得一试localhost

/** MySQL hostname */
define( 'DB_HOST', 'localhost' );

编辑

更正:nescience.db 可能是 MySQL 服务器的正确名称。在 NearlyFreeSpeech 上,这是他们命名数据库的方式。

于 2013-11-22T02:30:51.343 回答
0

这实际上是关于 WordPress 和 NFS 中用于数据库的名称。

在您网站上的 phpMyAdmin... 在页面顶部查找... 服务器:name1.db »数据库:name2

定义('DB_NAME',name2');定义('DB_HOST','name1.db');用户名和密码是您为此 MYSQL 站点创建的用户。希望这可以帮助

于 2016-01-03T15:56:32.673 回答