构建自己的WordPress
- Tips:数据库和用户命名,最安全的办法,是把数据库名、用户名以及密码设置成毫无意义的信息。
WordPress压缩包
WordPress将其需要的文件存放着一个Zip压缩包内,按照文件结构将文件压缩到一起,以方便下载。这些文件主要包括PHP脚步文件,但也有一些纯HTML文件、CSS文件、JavaScript文件、图片以及文本文件等。
WordPress的安装目录主要包括3个主要子文件夹,用于创建和维护你的WordPress网站:
- wp-admin 用于创建WordPress管理页面,也叫做Dashboard
- wp-content 包含你自己创建和网站使用的所有文件:主题、插件和文章。需要经常备份这个目录!
- wp-includes 包含所有的PHP和JavaScript代码
编辑WordPress配置文件
安装WordPress需要手动编辑wp-config.php配置文件。具体可以参考这里。
Dashboard后台顶级菜单选项
- Posts(文章):管理文章、分类目录、文章标签
- Media(媒体):通过媒体库查找和添加图片
- Links(链接):创建和编辑友情链接和链接类别(WP3.5开始移除了Links,可以通过插件Link Manager实现该功能)
- Pages(页面):添加和编辑静态页面
- Comments(评论):查看和管理访问者对文章发布的评论
- Appearance(外观):选择和修改主题、挂件、菜单的地方
- Plugins(插件):通过在wp中即成第三方软件,对网站进行定制
- Users(用户):添加网站的参与者,并给他们授予适当的权限
- Tools(工具):导入导出工具,有些插件也会增加条目到这个列表中
- Setting(设置):网站的基本配置
网站安全考虑
一些主题中可能包含有混淆代码,使得你的网络服务器可能成为DDoS攻击其他网站的鸡肉计算机,或者被用作钓鱼网站来挖掘你网站访问者的密码和其他个人信息,且都是在你和网站访问者不知情的情况下发生的。
可以考虑使用插件来检测主题的代码:
- Theme-Check插件,运行于WordPress主题目录内,检查主题是否符合标准(WordPress Codex文档)
- WordPress Exploit Scanner插件,它通过搜索网站内的文件和数据库表,提醒你任何可疑的代码。但并不能清楚这些可以代码,需要手动解决。
保护你的网站
- 更新WordPress、主题、插件及其他关键条目
除了可以获得新功能,更主要的好处是安全方面,有人发现了漏洞并做了修补,然后发布到更新中。
- 修改目录和文件权限
通常来说,文件不应该被任何人执行,但文件夹应该可以被WordPress用户执行。WordPress用户和用户组应该有写文件的权限,此外的所有人只能拥有读文件的权限。因此,文件的权限应该标记为644;文件夹的权限应标记为744.
- 使用.htaccess工作
分布式配置是Apache的一个功能,允许用户对服务器进行配置,但不会影响到其他使用该网络主机的用户。
实际上,目前更多使用的是Nginx
- 限制访问网站控制台的计算机数目
- 屏蔽垃圾评论
- 阻止读取目录
添加以下代码来隐藏目录
Options All -Indexes
- 防止脚本注入
不要让攻击者通过跨站脚本入侵你的网站。可以使用.htaccess文件来阻止恶意脚本修改重要的PHP变量GLOBALS和_REQUESR
- 隐藏和保护WordPress配置文件
简单的办法:修改管理员的用户名、使用健壮的密码、修改文件权限等
还可以将wp-config文件移出WordPress主目录。(从wp2.6开始,能够从两个地方检查配置文件存在与否。首先检查的install安装目录。如果没有找到,它会检查相应的上一级目录。如还没有找到才会提示“You don't have a configuration file……“。
- 使用配置文件来增加安全性
- 只用密钥来保护密码
备份和恢复
养成定期备份的好习惯。可以考虑插件备份,或者手动备份。
WordPress 数据库表结构
- wp_commentmeta :存储关于评论和评论者的信息(包括Gravatars以及是否被标记为垃圾评论)
- wp_comments :评论及相关信息
- wp_links:存储链接以及在Links中定义的其他内容
- wp_options:设置信息
- wp-postmeta:存储可以添加到WP博客文章中的可选自定义字段
- wp_posts:文章、静态页面和文章附件
- wp_term_relationships:当你给文章或者链接设置category或者tag是,信息存储在这儿
- wp_term_taxonomy:分类目录(文章)、标签或者链接类别
- wp_terms:category和tag的列表
- wp_usermeta:注册用户的相关信息
- wp_users:用户的信息
插件(plugin)和小工具挂件(widget)
插件可以创建小工具,小工具不能创建插件。
小工具通常是主题的组件。插件可以是主题的组件,但也可以直接与WP核心代码一起工作。
文章格式的样式
- Aside 无题:
- 标准
- 日志
- Gallery 相册
- Link 链接:链接文章
- Image 图片
- Quote 引用
- Status 状态
- Video 视频
- Audio 音频
- Chat 聊天
PHP主题模板
基本上,一个主题至少要包含4个PHP文件主索引index.php、页头header.php、页脚footer.php、侧边栏sidebar.php和一个CSS文件。