重装系统
在BCC实例中,重装系统选择WordPress。
Centos 6.5 x64
Apache 2.2.15:
Web 主目录:/home/www/default
配置文件目录:/etc/httpd/conf/httpd.conf
php扩展模块配置:/etc/httpd/conf.d/php.conf
重启 httpd 服务:service httpd restart
MySQL 5.1.73:
安装路径:basedir=/usr/share/mysql
数据库路径:datadir=/var/lib/mysql
日志文件路径:log-error=/var/log/mysqld.log
本地连接的套接字位置:socket=/var/lib/mysql/mysql.sock Mysql
修改 root 密码:mysqladmin -u用户名 -p旧密码 password 新密码,然后两次输入密码即可。
重启 mysql 服务:service mysqld restart
Php 5.3.3: 配置文件:/etc/php.ini 其中为了能够连接 mysql,还安装了 php-mysql 模块。
vsftp 2.2.2: 配置文件目录:/etc/vsftpd/vsftpd.conf ftp 默认用户:ftpwww ftp 密码:ftpwww 用户的密码在系统第一次启动时会随机生成在/home/password.txt中。
phpMyAdmin 4.0.10: 访问地址:http://ip 地址/phpMyAdmin 配置文件位置:/etc/phpMyAdmin/config.inc.php 访问权限配置文件目录:/etc/httpd/conf.d/phpMyAdmin.conf
wordpress 4.4.2: 部署包位置: /wordpress-4.4.2-zh_CN.tar.gz 需要部署时运行 wordpress.sh 进行部署
安装完成后,查看WordPress镜像官网文档 。
WordPress
初始化WordPress
其实就是解压WordPress.tar.gz文件到/home/www/default/wordpress。
人生建议:别用这个脚本,直接把内容解压到/home/www/default根目录下面。
WordPress-5.0.8.tar.gz带有Widgets
sh /root/wordpress.sh
获取mysql和ftp密码
cat /home/password.txt
建WordPress数据库
连接数据库,浏览器输入http://公网IP/phpMyAdmin/,输入root和password.txt中获取的mysql密码。
点击数据库,创建创建 wordpress数据库,WordPress需要数据库。
在浏览器中输入http://公网IP/wordpress,输入刚才创建的数据库,以及获取的mysql密码。
如果提交后失败可以直接去配置文件
cd /home/www/default/wordpress mv wp-config-sample.php wp-config.php vi wp-config.php
修改数据库名及账号密码。
建站
vsftp的使用
安装vsftp
yum install vsftpd #安装 service vsftpd start #启动 chkconfig --level 35 vsftpd on #开机自启
配置文件
vi /etc/vsftpd/vsftpd.conf #修改配置文件 anonymous_enable=NO #关闭匿名登录
新增用户
#创建autumn用户所属组为ftp,ftp目录为/home/ftp_autumn useradd -g ftp -s /sbin/nologin -d /home/ftp_autumn autumn #给用户重置密码 passwd autumn #查看所有用户 cat /etc/passwd|grep ftp
浏览器中输入ftp://公网IP,然后输入上面配置的账户密码即可使用。
出现的问题
无法建立目录wp-content/uploads/***/**。有没有上级目录的写权限?
首先,登录phpMyAdmin,找到wordpress数据库,打开wp_options表修改表中键名为upload_path的值为wp-content/uploads。
然后执行如下语句
groupadd www useradd -r -g www -s /bin/false www chown -R www /home/www/ chmod -R 755 /home/www
将WordPress设为网站根
vim /etc/httpd/conf/httpd.conf
DocumentRoot "/home/www/default/wordpress" --修改网站根目录为/www <Directory "/home/www/default/wordpress"> --把这个也对应的修改为/www
然后发现,主题的样式文件和js还是带有WordPress,果断备份数据重装,把WordPress放在Apache根目录下面。
WordPress手动升级
现在去下载WordPress包
https://wordpress.org/download/releases/
解压后删掉wp-content文件,然后覆盖掉服务器上的/home/www/default/wordpress,重新访问即可。
插件
cnblogs2wp
将博客园搬家到wordpress的插件。首先,服务器要挂VPN,因为https://wordpress.org/被毙了,挂好有去插件中搜索cnblogs2wp,输入ftp用户名密码即可安装。
或者直接去下载https://wordpress.org/plugins/cnblogs2wp/,解压后放在/home/www/default/wordpress/wp-content/plugins
如果/wp-content/uploads没有创建权限,要chmod 777 uploads
安装启用后在工具中可用,选择xml备份文件一定要勾选第三个选项,下载文章中的相关文件。
上传会有php的文件大小限制,vi /etc/php.ini
; Maximum allowed size for uploaded files. ; http://www.php.net/manual/en/ini.core.php#ini.upload-max-filesize upload_max_filesize = 8M
如果提示上传失败,要在wp-content下面新建uploads,并且给uploads文件夹chmod写权限。
除了使用cnblogs2wp最好也安装wp-patch-levi插件,wp-patch-levi是wordpress 补丁包。
主题插件adams
简洁,好用的个人博客型网站。侧边有搜索框,兼容手机。
https://github.com/Tokinx/Adams
下载后直接上传主题即可,注意压缩包方式一定是zip,rar不行。
主题插件Kratos(推荐)
有图片,可放广告,功能强大,但是会有点小bug,可以自己修正
https://github.com/Vtrois/Kratos
Kratos的样式要自己调整下,foot.php文件不能动,不然页面上方会出现白条。
安装在wordpress下面的/wp-content/themes中。
搜索框插件
Ivory Search(解压后文件夹为add-search-to-menu)
https://wordpress.org/plugins/add-search-to-menu/
先新建顶部菜单,Appearance -> Menus中新建一个menu,并且设为顶部菜单
把Ivory Search的搜索框放在顶部菜单中,Ivory Search -》 Settings -》 Menu Search 选中展示在顶部菜单中。
添加随机缩略图
WP Random Post Thumbnails
https://wordpress.org/plugins/wp-random-post-thumbnails/
安装完之后再Setting -> RandomThumbnails中使用
备份插件
BackWPup
https://cn.wordpress.org/plugins/backwpup/
sitemap插件
百度seo收录插件
Google XML Sitemaps 官网:https://wordpress.org/plugins/google-sitemap-generator/
Baidu Sitemap Generator 官网:https://wordpress.org/plugins/baidu-sitemap-generator/
下载baidu-sitemap-generator插件生成一个sitemap.xml页面,提交到百度站长后台中。
if(!function_exists('Baidu_Submit')) { function Baidu_Submit($post_ID) { $WEB_TOKEN = ''; //这里请换成你的网站的百度主动推送的token值 $WEB_DOMAIN = get_option('home'); //已成功推送的文章不再推送 if(get_post_meta($post_ID,'Baidusubmit',true) == 1) return; $url = get_permalink($post_ID); $api = 'http://data.zz.baidu.com/urls?site='.$WEB_DOMAIN.'&token='.$WEB_TOKEN; $request = new WP_Http; $result = $request->request( $api , array( 'method' => 'POST', 'body' => $url , 'headers' => 'Content-Type: text/plain') ); $result = json_decode($result['body'],true); //如果推送成功则在文章新增自定义栏目Baidusubmit,值为1 if (array_key_exists('success',$result)) { add_post_meta($post_ID, 'Baidusubmit', 1, true); } } add_action('publish_post', 'Baidu_Submit', 0); }
JS推送
WordPress主题文件中function.php底部文件,在当中添加如下javascript代码
<script> (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })(); </script>
博客遇到的问题
导入博客园的文章后点击文章页面404
在“设置(Settings)”→“固定链接”中,将“常用设置”改为“朴素”即可,这个选项是直接通过文章在数据库中的id自动设置文章链接;
使用Permalink的postname作为url时404
Apache的httpd.conf配置
如果想要修改固定链接的设置结构,如果运行于apache服务,必须确保apache服务支持。
首先,检查apache的配置,需要确保apache的设置中已经装载URL rewrite模块。
vi /etc/httpd/conf/httpd.conf,搜索rewrite_module,确保文件中包含有下面的代码,且前面没有#,确保正确装载url重写模块。
LoadModule rewrite_module modules/mod_rewrite.so
其次,激活AllowOverride ,搜索所有的AllowOverride None,全部改为AllowOverride all。
.htaccess文件配置
cd 到WordPress的根目录
touch .htaccess
vi .htaccess
内容如下
# BEGIN WordPress <IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteRule ^index.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] </IfModule>
解决方案参考:https://www.cnblogs.com/dajianshi/archive/2013/05/06/3062816.html