CentOS 7安装支持锐速的内核

锐速对系统的内核有一些要求,通常我们购买的vps内核都不一定能支持使用锐速,所以需要自己手动更换内核让它支持锐速。

这里是在CentOS 7系统更换内核

ssh登陆后输入

rpm -ivh https://buildlogs.centos.org/c7.01.u/kernel/20150327030147/3.10.0-229.1.2.el7.x86_64/kernel-3.10.0-229.1.2.el7.x86_64.rpm --force

等自动运行完毕后输入下面的命令看是否安装成功

rpm -qa | grep kernel

然后重启vps,输入uname -r 看看是不是你刚才安装的内核。

CentOS7自带firewall防火墙管理命令和添加端口命令

CentOS 7自带的防火墙是firewall,我在一台机子上装了小飞机后飞不起来,最开始以为是ip被墙了,后来发现原来是防火墙没关。firewall和iptables的命令不一样,所以这类记录下。

首先,关闭firewall的命令

systemctl stop firewalld

关闭后看看firewall的状态

systemctl status firewalld

然后试试你的服务是否可以用了,如果可以,那么就是防火墙的问题了。

接下来添加firewall开放端口的命令

firewall-cmd --zone=public --add-port=80/tcp --permanent

批量添加firewall的端口命令

firewall-cmd --permanent --zone=public --add-port=100-500/tcp
firewall-cmd --permanent --zone=public --add-port=100-500/udp

添加后重新加载一次防火墙规则,不然不起作用。

firewall-cmd --reload

如果没有启用的话加载不了新规则,所以需要先启动firewall防护墙,命令如下

systemctl start firewalld

下面是另外的一些firewall的资料。

1、firewalld的基本使用
启动: systemctl start firewalld
查看状态: systemctl status firewalld
停止: systemctl disable firewalld
禁用: systemctl stop firewalld

2.systemctl是CentOS7的服务管理工具中主要的工具,它融合之前service和chkconfig的功能于一体。
启动一个服务:systemctl start firewalld.service
关闭一个服务:systemctl stop firewalld.service
重启一个服务:systemctl restart firewalld.service
显示一个服务的状态:systemctl status firewalld.service
在开机时启用一个服务:systemctl enable firewalld.service
在开机时禁用一个服务:systemctl disable firewalld.service
查看服务是否开机启动:systemctl is-enabled firewalld.service
查看已启动的服务列表:systemctl list-unit-files|grep enabled
查看启动失败的服务列表:systemctl --failed

3.配置firewalld-cmd

查看版本: firewall-cmd --version
查看帮助: firewall-cmd --help
显示状态: firewall-cmd --state
查看所有打开的端口: firewall-cmd --zone=public --list-ports
更新防火墙规则: firewall-cmd --reload
查看区域信息: firewall-cmd --get-active-zones
查看指定接口所属区域: firewall-cmd --get-zone-of-interface=eth0
拒绝所有包:firewall-cmd --panic-on
取消拒绝状态: firewall-cmd --panic-off
查看是否拒绝: firewall-cmd --query-panic

那怎么开启一个端口呢
添加
firewall-cmd --zone=public --add-port=80/tcp --permanent (--permanent永久生效,没有此参数重启后失效)
重新载入
firewall-cmd --reload
查看
firewall-cmd --zone= public --query-port=80/tcp
删除
firewall-cmd --zone= public --remove-port=80/tcp --permanent

VPS安装Nginx后绑定域名的方法

通常来说,一般使用VPS搭建网站都会搭建完整的网站环境,例如我们用的LNMP一键包,会有专门的增加域名绑定的指令,不过如果你只是为一台VPS单独安装了nginx服务的话,要怎么绑定域名呢?方法如下:

  1. 远程连接并登录到 Linux 实例。
  2. 执行命令 cd /etc/nginx/conf.d 打开 Nginx 服务配置文件目录。
  3. 执行命令 vi 您要创建的域名.conf 创建域名规则配置文件,如示例中的 vi www.server110.com.conf
  4. 输入 i 编辑新建的配置文件:
    • 为每一个域名建立一个单独的配置文件时输入以下内容:

      1. server
      2. {
      3. listen 80; #监听端口设为 80。
      4. server_name www.server110.com; #绑定您的域名。
      5. index index.htm index.html index.php; #指定默认文件。
      6. root /home/www/server110.com; #指定网站根目录。
      7. include location.conf; #当您需要调用其他配置文件时才粘贴此项,如无需要,请删除此项。
      8. }
    • 将多个域名规则写进一个共同的配置文件时输入以下内容:

      1. server
      2. {
      3. listen 80; #监听端口设为 80。
      4. server_name www.server110.com; #绑定您的域名。
      5. index index.htm index.html index.php; #指定默认文件。
      6. root /home/www/server110.com; #指定网站根目录。
      7. include location.conf; #当您需要调用其他配置文件时才粘贴此项,如无需要,请删除此项。
      8. }
      9. server
      10. {
      11. listen 80; #监听端口设为 80。
      12. server_name msn.server111.com; #绑定您的域名。
      13. index index.htm index.html index.php; #指定默认文件。
      14. root /home/www/msn.server110.com; #指定网站根目录。
      15. include location.conf; #当您需要调用其他配置文件时才粘贴此项,如无需要,请删除此项。
      16. }
    • 为无 WWW 前缀的域名配置规则并加 301 跳转时输入以下内容:
      1. server
      2. {
      3. listen 80;
      4. server_name server110.com;
      5. rewrite ^/(.*) http://www.server110.com/$1 permanent;
      6. }
    • 需要为域名添加 404 提示时输入以下内容:
      1. server
      2. {
      3. listen 80; #监听端口设为 80。
      4. server_name www.server110.com; #绑定您的域名。
      5. index index.htm index.html index.php; #指定默认文件。
      6. root /home/www/server110.com; #指定网站根目录。
      7. include location.conf; #当您需要调用其他配置文件时才粘贴此项,如无需要,请删除此项。
      8. error_page 404 /404.html;
      9. }
  5. 按 Esc 退出编辑并输入 :wq 保存退出。
  6. 执行命令 nginx -t 检查配置是否有误,并按照报错提示修复错误。
  7. 执行命令 service nginx restart 重启 Nginx 服务。
  8. 执行命令 service nginx reload 重新载入 Nginx 服务。

CentOS 6查看和管理iptables 防火墙状态的命令

CentOS 6上面默认的是iptables防火墙,如果想要查看防火墙是否运行,只需要输入下面的命令。
service iptables status
如果防火墙没有运行会提示:
iptables: Firewall is not running.

启动iptables的话就输入下面的命令:
service iptables start

重新启动iptables的话就输入下面的命令:
service iptables restart

停止iptables的话就输入下面的命令:
service iptables stop

Linux VPS分析目录资源大小占用命令

通常来说,当你在Linux系统的VPS上面跑网站后,一段时间后你会发现你vps的硬盘就占用非常大了,但是自己网站数据并不多,那么是什么占用了你vps的硬盘空间呢?我们可以通过命令du -sh 来分析一下。

具体使用方法:

登陆vps的ssh后,输入下面的代码

du -sh /*

可以列出你整个VPS所有文件夹的大小。

/*是控制分析哪个目录的,你根据上面的结果,然后灵活变化后面的路径就行了,例如

du -sh /usr/*

用这个命令来分析usr目录下的文件夹大小,最后定位到大文件,直接删除就行了(如果没用的话)

typecho编辑器自定义按钮输入特定内容

在wordpress上面有一些专门的插件实现后台编辑器的时候点击特定按钮出现对应的内容,而typecho上没有这个类型的插件,所以需要自己想办法添加。

此问题解决方法是cyo大佬分享的,表示感谢,好人一生平安。

typecho编辑器自定义按钮输入特定内容方法如下:

首先在admin文件夹下新建一个php文件,自己命名,例如add-daima.php

内容如下:

<script>
$('#btn-add').click(function() {
var addText = '产品名:\n生产地:\n毛重:\n单价:\n保质期\n。。。。\n。。。\n购买链接:';
if (confirm('<?php _e('确认要添加吗?'); ?>')) {
$("#text").append(addText);
}
});
</script>

如果不需要确认提醒就删掉红色字段。

然后修改admin文件夹下的write-post.php

在合适的位置输入

<button type="button" id="btn-add" class="btn"><?php _e('添加自定义内容'); ?></button>

然后在倒数第五行输入

include 'add-daima.php';

搞定收工

typecho换域名后批量替换网址数据库操作命令

数据库修改域名

数据库修改建议直接使用SQL语句替换,方便快捷。

修改typecho_options表

UPDATE `typecho_options` SET `value` = '新域名地址' WHERE `typecho_options`.`name` = 'siteUrl' AND `typecho_options`.`user` =0;

替换文章正文的旧域名

UPDATE `typecho_contents` SET `text` = REPLACE(`text`,'旧域名地址','新域名地址');

替换管理员的个人网址

UPDATE `typecho_users` SET `url` = REPLACE(`url`,'旧域名地址','新域名地址');

以上SQL语句默认表前缀为typecho_,若你的数据库表前缀不是typecho_,请自行修改语句。

2018年7月27日测试有效:wordpress评论邮件通知代码

wordpress评论邮件通知评论者,搜了很多插件,都是邮件订阅评论的,所有人都会收到,以前的代码有些失效了,今天找到一个能用的,记录一下。

在你Wordpress主题函数文件里面添加下面代码即可。如果邮件发送不出去,自己搜一个SMTP的插件装上就行了。

function comment_mail_notify($comment_id) {
 $admin_notify = '1'; // admin 要不要收回复通知 ( '1'=要 ; '0'=不要 )
 $admin_email = get_bloginfo ('admin_email'); // $admin_email 可改为你指定的 e-mail.
 $comment = get_comment($comment_id);
 $comment_author_email = trim($comment->comment_author_email);
 $parent_id = $comment->comment_parent ? $comment->comment_parent : '';
 global $wpdb;
 if ($wpdb->query("Describe {$wpdb->comments} comment_mail_notify") == '')
 $wpdb->query("ALTER TABLE {$wpdb->comments} ADD COLUMN comment_mail_notify TINYINT NOT NULL DEFAULT 0;");
 if (($comment_author_email != $admin_email && isset($_POST['comment_mail_notify'])) || ($comment_author_email == $admin_email && $admin_notify == '1'))
 $wpdb->query("UPDATE {$wpdb->comments} SET comment_mail_notify='1' WHERE comment_ID='$comment_id'");
 $notify = $parent_id ? get_comment($parent_id)->comment_mail_notify : '0';
 $spam_confirmed = $comment->comment_approved;
 if ($parent_id != '' && $spam_confirmed != 'spam' && $notify == '1') {
 $wp_email = 'no-reply@' . preg_replace('#^www.#', '', strtolower($_SERVER['SERVER_NAME'])); // e-mail 发出点, no-reply 可改为可用的 e-mail.
 $to = trim(get_comment($parent_id)->comment_author_email);
 $subject = '您在 [' . get_option("blogname") . '] 的留言有了回复';
 $message = '
 <div>
 <p>' . trim(get_comment($parent_id)->comment_author) . ',您好!</p>
 <p>您曾在《' . get_the_title($comment->comment_post_ID) . '》的留言:<br /><br />'
 . trim(get_comment($parent_id)->comment_content) . '</p>
 <p>' . trim($comment->comment_author) . ' 给您的回复:<br /><br />'
 . trim($comment->comment_content) . '</p>
 <p>您可以点击 <a href="' . htmlspecialchars(get_comment_link($comment->comment_parent)). '" target="_blank">查看回复的完整內容</a></p>
 <p>感谢您对 <a href="' . get_option('home') . '" target="_blank">' . get_option('blogname') . '</a> 的关注,如您有任何疑问,欢迎在博客留言。</p>
 <p>(此邮件由系统自动发送,请勿回复。)</p>
 </div>';
 $from = "From: \"" . get_option('blogname') . "\" <$wp_email>";
 $headers = "$from\nContent-Type: text/html; charset=" . get_option('blog_charset') . "\n";
 wp_mail( $to, $subject, $message, $headers );
 }
}
add_action('comment_post', 'comment_mail_notify');
 
/* 自动加勾选栏 */
function add_checkbox() {
 echo '<input type="checkbox" name="comment_mail_notify" id="comment_mail_notify" value="comment_mail_notify" checked="checked" style="margin-left:20px;" /><label for="comment_mail_notify">有人回复时邮件通知我</label>';
}
add_action('comment_form', 'add_checkbox');

来源:https://qq52o.me/1287.html

Lnmp 1.4/1.5开启fileinfo的方法

默认的lnmp安装好后是没有开启fileinfo支持的,如果需要手动开启lnmp的fileinfo模块,方法如下:

lnmp 1.4及更低版本
修改lnmp安装包目录下的 include/upgrade_php.sh 将里面的 --disable-fileinfo 全部删除,然后再 ./upgrade.sh php 升级一下php就行,如果还没安装lnmp的话是修改 include/php.sh
++++++++++++++++++++++++++++++

lnmp 1.5+版本,修改lnmp安装包目录下的lnmp.conf 文件,将里面的Enable_PHP_Fileinfo='n' 后面的n改成y 保存,然后 ./upgrade.sh php 升级一下PHP就会安装好fileinfo模块