包含:登录失败锁定、90天密码有效期、30分钟会话超时、 强制改密、登录审计日志、屏幕水印、企业背景图、 备案信息固定底部、favicon、JS空集合保护、 会话过期体验优化(403 JSON)、display_errors 关闭、 固定 key 根治 Integrity check failed 等全部改动 注意:config.inc.php/.htaccess/.user.ini 含敏感信息, 通过 .gitignore 排除,勿推送到公开仓库。
35 lines
1.4 KiB
SQL
35 lines
1.4 KiB
SQL
-- Make mrbs_entry.repeat_id a foreign key
|
|
-- Previously repeat_id was set to zero if there was no repeat.
|
|
-- However this breaks our foreign key constraint so we have to modify
|
|
-- the repeat_id column before we can create the foreign key.
|
|
|
|
ALTER TABLE %DB_TBL_PREFIX%entry
|
|
ALTER COLUMN repeat_id DROP DEFAULT,
|
|
ALTER COLUMN repeat_id DROP NOT NULL,
|
|
ALTER COLUMN repeat_id SET DEFAULT NULL;
|
|
|
|
UPDATE %DB_TBL_PREFIX%entry
|
|
SET repeat_id=NULL WHERE repeat_id=0;
|
|
|
|
-- Tidy up the database getting rid of any zombie rows which would prevent
|
|
-- the foreign key being created. Note that these rows will not be visible to users
|
|
-- and admins through MRBS. They have most likely been created when a row has been
|
|
-- deleted from a table using a database admin tool, rather than through MRBS. Of course,
|
|
-- foreign keys will stop this happening in the future.
|
|
|
|
DELETE FROM %DB_TBL_PREFIX%entry
|
|
WHERE repeat_id IS NOT NULL
|
|
AND repeat_id NOT IN (SELECT id FROM %DB_TBL_PREFIX%repeat);
|
|
|
|
-- Also, while we're at it, get rid of any redundant entries in the repeat table, ie rows
|
|
-- that are not referenced by a row in the entry table.
|
|
DELETE FROM %DB_TBL_PREFIX%repeat
|
|
WHERE id NOT IN (SELECT repeat_id FROM %DB_TBL_PREFIX%entry WHERE repeat_id IS NOT NULL);
|
|
|
|
|
|
ALTER TABLE %DB_TBL_PREFIX%entry
|
|
ADD FOREIGN KEY (repeat_id)
|
|
REFERENCES %DB_TBL_PREFIX%repeat(id)
|
|
ON UPDATE CASCADE
|
|
ON DELETE CASCADE;
|
|
|