分类目录归档:Code

LAMP(Ubuntu16+PHP7.0)安装WordPress

好多人问我云服务器如何安装 WordPress?或者是现有的教程都很老,再比如使用的是Nginx环境,而自己想用 Apache 的。为了解决这一系列问题,我就写了这篇文章,供大家参考,日后也将逐步更新,力争始终保持此文章为较新。

LAMP 是 Linux、Apache、MySQL 和 PHP 的缩写,是 WordPress 系统依赖的基础运行环境。我们先来准备 LAMP 环境:

服务器环境

IDE

Ubuntu 16.04.1 x64
PHP7.0

安装 Apache2

在终端输入该命令 ,使用 apt-get 安装 Apache2:

sudo apt-get install apache2 -y

安装 PHP 组件

Ubuntu 16.04 中 apt-get 里有 php7.0 ,所以我们可以直接安装 php7.0 :

sudo apt-get install php7.0 -y

安装 php 相关组件:

sudo apt-get install libapache2-mod-php7.0

安装 MySQL 服务

安装 MySQL 过程中,控制台会提示您输入 MySQL 的密码,您需要输入两次密码,并记住您输入的密码,后续步骤需要用到:

sudo apt-get install mysql-server -y

再确认一次密码:

安装 php MySQL相关组件:

sudo apt-get install php7.0-mysql

安装 phpmyadmin

使用 apt-get 安装 phpmyadmin,安装过程中,您需要根据提示选择 apache2 ,再输入root密码 和数据库密码:

sudo apt-get install phpmyadmin -y

输入密码:

再次确认密码:

建立 /var/www/html 下的软连接:

sudo ln -s /usr/share/phpmyadmin /var/www/html/phpmyadmin

重启 MySQL 服务:

sudo service mysql restart

重启 Apache 服务:

sudo systemctl restart apache2.service

安装并配置 WordPress

我们需要下载一个 WordPress 压缩包,在Wordpress官网即可找到最新安装包连接:

下载和安装

wget 下载地址

例如: wget https://cn.wordpress.org/wordpress-4.9.4-zh_CN.zip

下载完成后,解压这个压缩包

sudo unzip zip名称

例如: sudo unzip wordpress-4.9.4-zh_CN.zip

解压完后,就能在 WordPress 文件夹里看到 WordPress 的源码了。

为 wordpress 配置一个数据库

进入 mysql,输入以下代码后,按提示输入您MySQL密码:

mysql -u root -p

为 wordpress 创建一个叫 wordpress 的数据库:

CREATE DATABASE wordpress;

为 这个数据库设置一个用户为 wpsql:

CREATE USER wpsql;

为这个用户配置一个密码为 password:

SET PASSWORD FOR wpsql= PASSWORD("password");

//wordpress为数据库名字

为这个用户配置数据库的访问权限:

GRANT ALL PRIVILEGES ON wordpress.* TO wpsql IDENTIFIED BY"password";

生效这些配置:

FLUSH PRIVILEGES;

然后退出 mysql

exit;

配置 wordpress

由于PHP默认访问 /var/www/html/ 文件夹,所以我们需要把 wordpress 文件夹里的文件都复制到 /var/www/html/ 文件夹

sudo mv wordpress/* /var/www/html/

修改一下 /var/www/html/ 目录权限:

sudo chmod -R 777 /var/www/html/

将apache指定到index.html

sudo mv /var/www/html/index.html /var/www/html/index~.html

重启 Apache 服务:

sudo systemctl restart apache2.service

测试访问

http://ip地址或绑定的域名

安装Wordpress

根据你之前安装数据库的名称和密码进填写:

数据库名:填写创建的数据库名称
// 本例的数据库名称为:wordpress

用户名:填写创建的数据库用户名
// 本例的数据库用户名为:wpsql

数据库主机:localhost

表前缀:根据喜好自己更改,也可不更改,如图:

下面就可以去享受你的博客了!不错使用过程中你可能会发现 WordPress 可能不能更新插件、主题和组件,这是因为/var/www/目录的所有者不同,导致 WordPress 无权限写入。

 

解决Wordpress权限问题

首先需要弄清除你 WordPress 的安装目录在哪?使用FTP工具登陆。

Ubuntu 16.04 中预置了 FTP 账号,默认是 Ubuntu 的账号和密码(用你登陆服务器SSH的账号和密码登陆)。注意!连接方式选择 SFTP over SSH,端口22.

登陆后,查看自己 WordPress 的安装目录:

如图,我的安装目录是 /var/www/html/

接下来查看Apache的权限归属,输入:

ps -aux

发现你的所属权限为 www-data

下面开始解决问题:

输入以下命令,修改目录权限:

sudo chmod -R 775 /var/www/http/

// /var/www/http/为你的Wordpress安装目录

输入以下命令,修改 www-data 权限:

sudo chown -R www-data /var/www/http/

// /var/www/http/为你的Wordpress安装目录

然后即可更新!

除此之外,还有一些其他办法:

其他方法1:

wp-config.php 底部加入以下代码:

define("FS_METHOD","direct");
 
define("FS_CHMOD_DIR",0777);
 
define("FS_CHMOD_FILE",0777);
其他方法2:

把你的当前用户添加到 www-data 用户组。

继续阅读LAMP(Ubuntu16+PHP7.0)安装WordPress

WordPress留言随机本地头像

WordPress 留言头像只能使用  Gravatar 头像而且还拖累网站速度。使用头像插件,只能使用一个特定的头像来给未注册的用户显示头像,过于单调?最好的方法是随机显示留言头像,现在来动手实现吧!

WordPress 插件中,关于头像的插件有很多,但是能够实现随机头像的插件却几乎没有,所以这个功能必须自己动手来实现,方法如下:

实现方法:

WordPress 实现方法很简单,利用如下代码:

add_filter( 'get_avatar' , 'local_random_avatar' , 1 , 5 );
function local_random_avatar( $avatar, $id_or_email, $size, $default, $alt) {
    if ( ! empty( $id_or_email->user_id ) ) {
        $avatar = ''.get_template_directory_uri().'/avatar-fruit/admin.png'; // 此处修改链接及图片后缀名
    }else{
        $random = mt_rand(1, 20);
        $avatar = ''.get_template_directory_uri().'/avatar-fruit/Fruit-'. $random .'.png';  // 此处修改链接及图片后缀名
    }
    $avatar = "<img alt='{$alt}' src='{$avatar}' class='avatar avatar-{$size} photo' height='{$size}' width='{$size}' />";
    return $avatar;
}

在两条注释的地方修改你自己的图片地址和名称,该有符号的地方要加上符号,随机产生的只有数字:

将以上代码粘贴到 当前主题的functions.php 中,这是个老方法,你可以这样做,但是我建议你按照我下面的操作来做,便于维护和选择执行范围:

安装 Snippets

在 WordPress 插件中搜索并安装插件:Code Snippets

插件地址:点击此处

安装好插件后启用,点击 添加片段新建 一个片段。自己命名并插入相关代码,然后注意一下底部选项:

选项 效果
Run snippets everywhere 在所有页面执行此段代码
Only run on site front-end 仅在前端执行此代码,对后端无影响

建议选择第二项效果更佳,仅在前端执行此代码,实现随机头像效果。

保存执行即可!

但是,这样实现起来会有一定的问题,比如你在已经登陆到 WordPress后台 的时候,访问前端网站,Wordpress 会在顶部显示你的登陆状态,由于前端实行随机头像,导致缩略图和个人头像不一致。

问题修复:

首先,你得先安装一款 WordPress 头像插件,类似于 WP User Avatar,不用非得安装与我相同的插件,Wordpress 大多数的头像插件都很类似。

WP User Avatar 插件连接:点击进入

进入设置界面,我们需要将 默认头像 此处不选中,但这是个单选框,不能取消选中,我们必须借用浏览器进行修改代码。用 Chrome浏览器 Ctrl + Shift + i 打开检查:

定位到选项位置:

radio 改为 checkbox,单选框就变成了复选框:

然后,退出代码检查模式,下面就很简单了,取消选中并保存即可:

最后,只需在 用户编辑 中设置自己的管理员头像即可,这样一来在前端,WP User Avatar 的优先级比 Snippents 修改的 functions.php 的优先级高,不会出现上类问题。

继续阅读WordPress留言随机本地头像

WordPress增加文章字体栏

WordPress 在线文章工具栏太少,无法精确修改文字大小,或是想要更改文字字体、增加下划线?现在无须安装插件,直接调用Wordpress隐藏工具栏就可以拓展更多功能。减少在文章中嵌入HTML的过程。

想增加字体栏?无需安装任何插件,因为Wordpress已经内置的文字调整功能,之时没有显示出来,我们只需要修改当前主题的 functions.php 文件,在其底部增加下列代码:

修改 functions.php 
//Font Size
function add_editor_buttons($buttons) {
$buttons[] = 'fontselect';
$buttons[] = 'fontsizeselect';
$buttons[] = 'backcolor';
$buttons[] = 'underline';
$buttons[] = 'hr';
$buttons[] = 'sub';
$buttons[] = 'sup';
$buttons[] = 'cut';
$buttons[] = 'copy';
$buttons[] = 'paste';
$buttons[] = 'cleanup';
$buttons[] = 'wp_page';
$buttons[] = 'newdocument';
return $buttons;
}
add_filter("mce_buttons_3", "add_editor_buttons");

如果保存时提示 无法更改,可以尝试使用FTP在本地进行更改,再上传。

原先文章栏:

增加文字栏:

继续阅读WordPress增加文章字体栏

树莓派安装Apache建立静态站点

想给树莓派做一个静态网站?或者给树莓派做一个主页,整合已开发功能方便操作?那就给树莓派配置服务器吧。我比较喜欢 Apache,本文就介绍树莓派 Apache的安装,以及给予树莓派固定的内网ip和开放www目录的写入权限。

安装前先更新下软件源和软件
sudo apt-get update
sudo apt-get upgrade
安装Apache2
sudo apt-get install apache2

y ⏎

一条指令就可以了,树莓派已经安装上了 Apache2,安装完成后默认启动服务。

现在访问树莓派的 ip地址 就可以看见测试页面:

注意测试页面第一段的加粗语句,后面括号中就是网页的根目录 /var/www/html/

接下来就是上传网站到根目录,但是根目录没有写入权限,你会发现写入失败,所以要获取根目录权限。

获取WWW目录权限
sudo chmod -R 777 /var/www/

现在就可以使用 FTP或者拷贝、移动的方式将静态文件放置于相应位置。

树莓派绑定固定内网ip

要绑定固定ip,接下来就要登录到路由器页面,使用 IP与MAC绑定 功能让树莓派使用静态内网ip。

测试页面

绑定固定ip之后,就可以使用固定内网地址,在局域网中进行访问:

继续阅读树莓派安装Apache建立静态站点

启用树莓派FTP传输协议

树莓派搭建好了,想要远程播放歌曲?想要树莓派连电视看电影?想要树莓派下载文件并取回?这些都不用反复插拔 TF/SD卡,直接打开FTP 21号端口,进行极速的局域网传输吧~

FTP Server安装:

安装指令:

sudo apt-get install vsftpd

使用指令启动FTP服务:

sudo service vsftpd start

这样,树莓派的 FTP 服务就正式运转了。

FTP连接的账号为 pi / root / 你的树莓派账户名称;密码为树莓派对应账户的密码。

允许树莓派写入权限:

安装好 FTP 服务后,你会发现,只能将树莓派的文件拷贝到终端上,而不能将文件写入树莓派。vsftp 默认关闭了写入权限,因为当你的树莓派暴露在互联网中,易受到攻击。

550 permission denied

修改配置文件即可,输入指令:

sudo nano /etc/vsftpd.conf

找到 write_enable=YES 的,将前面的 # 号删除即可。

#write_enable=YES   →    write_enable=YES

删除注释符号后,按 Ctrl + X 保存,输入 Y 确认:

使用 FTP客户端进行文件传输

Windows下建议选择 FlashFXP 
macOS下建议选择 Transmit 

继续阅读启用树莓派FTP传输协议