读了很多书来解决这个问题,但我被困住了.
将WP站点从共享移动到linode VPS。
Configs
WordPress 3.6.1
mysql Ver 14.14远端5.7.5-m15,使用EditLine包装器(x86_64)
PHP5.18-1+deb.sury.org~+1 (cli) (建于2014年10月17日15:11:34)
apache
服务器版本: Apache/2.4.10 (Ubuntu)
服务器构建日期:2014年7月22日22:57:50
DB是ut8
虚拟主机conf文件:
DocumentRoot /home/userName/webSite
<Directory />
Options FollowSymLinks
AllowOverride All
Require all granted
</Directory>
<Directory /var/www/>
Options FollowSymLinks MultiViews
AllowOverride None
Require all granted
</Directory>
ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
<Directory "/usr/lib/cgi-bin">
AllowOverride None
Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
Require all granted
</Directory>.htaccess:
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteRule ^([_0-9a-zA-Z-]+/)?wp-admin$ $1wp-admin/ [R=301,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress在wp_usermeta表中的管理:
wp_capabilities
a:1:{s:13:"administrator";s:1:"1";}所以登录是可以的。
编辑职位正在工作
PROBELM:
新发布有“提交审查”按钮,安装了“发布”!
单击“submit for review”将显示“您没有编辑文章的适当权限”
我似乎找不到问题了。
我尝试过修复文件和文件夹权限。
向WP_HOME添加定义(‘WP_HOME’和define('WP_SITEURL‘)
我甚至不知道从哪里开始..。
wp_posts表在ID上有A_I。wp_posts转储显示:
--
-- AUTO_INCREMENT for table `wp_posts`
--
ALTER TABLE `wp_posts`
MODIFY `ID` bigint(20) unsigned NOT NULL AUTO_INCREMENT,AUTO_INCREMENT=7633;7633是下一个职位ID。
我怎么解决这个问题??请问任何问题,因为我已经通过大多数修复建议在网上。
ThanX :-)
发布于 2018-01-11 20:00:16
迁移意味着环境变化
你的环境是什么?一个是Mysql!
考虑到涉及到迁移,我打赌这与你的数据库有关.您可以检查日志,找出哪些查询失败了。对我来说,它是sql,特别是在日期不被接受的时候与0相关的。(在新发布的草稿中出现)。
继续阅读,以解决sql_mode,如果这是你的问题。
检查您的sql_mode
要检查当前的sql_mode是什么,可以在mysql (可能是根mysql用户)中这样做:SELECT @@sql_mode;
Wordpress使用0表示“空”日期时间,一些sql模式设置不允许这样做。我相信有一些插件试图解决应用层( wordpress)的日期问题,但我认为这可能有点麻烦……
我选择了切换我的sql_mode,并将我的NO_ENGINE_SUBSTITUTION模式变成了NO_ENGINE_SUBSTITUTION,因为wordpress是使用我的数据库的唯一工具,而且我也可以在我的项目中使用这个sql_mode。您可能需要保留sql_mode设置中的大多数设置,但只需删除“无零在日期”选项,因此在重置当前sql_mode之前,应该检查当前的sql_mode是什么。
默认情况下,sql_modes是什么?
MySQL 5.7中的默认SQL模式包括以下模式: ONLY_FULL_GROUP_BY、STRICT_TRANS_TABLES、NO_ZERO_IN_DATE、NO_ZERO_DATE、ERROR_FOR_DIVISION_BY_ZERO、NO_AUTO_CREATE_USER和NO_ENGINE_SUBSTITUTION。
因此,如果您发现NO_ZERO_IN_DATE, NO_ZERO_DATE存在,您可能希望从它中删除它,并保存其余的。
在哪里更改sql模式?
若要在服务器启动时设置SQL模式,请在命令行上使用--sql- mode =“mode”选项,或在选项文件(如my.cnf (Unix操作系统)或my.ini (Windows) )中使用sql-mode=“mode”。模式是由逗号分隔的不同模式的列表。若要显式清除SQL模式,请使用命令行上的- sql- mode ="“或选项文件中的sql-mode=”“将其设置为空字符串。
我在服务器上为mysql程序设置了options.cnf或my.cnf。
发布于 2014-12-11 13:07:14
解决方案
定义一个新的管理用户
与管理用户登录
将您以前的管理员降为贡献者
将其增加到管理员
使用原始管理员登录
现在起作用了。
删除新管理员
现在又恢复正常了。
发布于 2014-12-17 16:40:22
在许多不同的解决方案之后,我能找到的唯一解决方案就是安装WordPress4.0.1的新副本,并修复所有问题。
https://stackoverflow.com/questions/27423160
复制相似问题