X

由于无法提供服务器的高昂费用,博客即将迁移到github pages...

点击右上的X可以临时关闭此框并阻止跳转^_^

现在带您过去 秒后跳转...

我是如何将mac OS X(10.11.6)的PHP版本升级到5.6.29的


    由于项目和学习的需要,本机曾经升级到了5.5.38已经不够折腾了,所以时候升级一波5.6了(没必要到7的时候,我是不会去升级的)。
    首先直接去搜索引擎找便捷的方法呗,直接就选中了一款来自“简书”的文章,因为它就简单的一条命令:

    curl -s http://php-osx.liip.ch/install.sh | bash -s 5.6
    

    看到这个地址,我心里就放心了!因为上一个版本也是liip的。
    我首先看了一下这个install.sh的内容,确定没有什么危险,里面其实就是检测一下设备的系统版本和cpu类型是否可以升级。
    环境检测没问题就去下载了一个叫做“packager.tgz”的压缩包,然后解压,运行里面的pythony脚本。

    #TYPE = 5.6-10.10
    sudo packager.py install $TYPE-frontenddev
    

    (…继续阅读这篇文章…)

[修复]wordpress WP_Image_Editor_Imagick 指令注入漏洞

    漏洞描述:该修复方案为临时修复方案,可能存在兼容性风险,为了防止WP_Image_Editor_Imagick扩展的指令注入风险,将wordpress的默认图片处理库优先顺序改为GD优先,用户可在/wp-includes/media.php的_wp_image_editor_choose()函数中看到被修改的部分
    云盾不提供自动修复,咱们自己来修复吧。根据提示,我们打开media.php 找到相关函数的内容:

    $implementations = apply_filters( 'wp_image_editors', array( 'WP_Image_Editor_Imagick', 'WP_Image_Editor_GD' ) );
    

    做如下顺序调整:

    $implementations = apply_filters( 'wp_image_editors', array( 'WP_Image_Editor_GD', 'WP_Image_Editor_Imagick' ) );
    

    正如上面的描述所说,临时方案嘛。Wordpress官方不做处理的话,你每次升级了程序,都会出现这样的报错,每次都得自己去修改。不过如果不在乎这个提示的话,不理也行!
    (…继续阅读这篇文章…)

linux下mysql的root密码忘记解决方法

    1.首先确认服务器出于安全的状态,也就是没有人能够任意地连接MySQL数据库。
    因为在重新设置MySQL的root密码的期间,MySQL数据库完全出于没有密码保护的
    状态下,其他的用户也可以任意地登录和修改MySQL的信息。可以采用将MySQL对
    外的端口封闭,并且停止Apache以及所有的用户进程的方法实现服务器的准安全
    状态。最安全的状态是到服务器的Console上面操作,并且拔掉网线。
    2.修改MySQL的登录设置:
    # vi /etc/my.cnf
    在[mysqld]的段中加上一句:skip-grant-tables
    例如:
    [mysqld]
    datadir=/var/lib/mysql
    socket=/var/lib/mysql/mysql.sock
    skip-grant-tables
    保存并且退出vi。
    3.重新启动mysqld
    # /etc/init.d/mysqld restart
    Stopping MySQL: [ OK ]
    Starting MySQL: [ OK ]
    4.登录并修改MySQL的root密码
    # /usr/bin/mysql
    Welcome to the MySQL monitor. Commands end with ; or \g.
    Your MySQL connection id is 3 to server version: 3.23.56
    Type ‘help;’ or ‘\h’ for help. Type ‘\c’ to clear the buffer.
    mysql> USE mysql ;
    Reading table information for completion of table and column names
    You can turn off this feature to get a quicker startup with -A
    Database changed
    mysql> UPDATE user SET Password = password ( ‘new-password’ ) WHERE User = ‘root’ ;
    Query OK, 0 rows affected (0.00 sec)
    Rows matched: 2 Changed: 0 Warnings: 0
    mysql> flush privileges ;
    Query OK, 0 rows affected (0.01 sec)
    mysql> quit
    Bye
    5.将MySQL的登录设置修改回来
    # vi /etc/my.cnf
    将刚才在[mysqld]的段中加上的skip-grant-tables删除
    保存并且退出vi。
    6.重新启动mysqld
    # /etc/init.d/mysqld restart
    Stopping MySQL: [ OK ]
    Starting MySQL: [ OK ]
    文章转自:http://www.cnblogs.com/allenblogs/archive/2010/08/12/1798247.html

apache域名跳转法简单完成重定向

    用.htaccess做域名跳转
    apache默认是开启.htaccess的。
    但是为了成功率还是检查一下配置有没有真的支持
    编码apache的配置文件httpd.conf,把相应的内容修改为:

    Options FollowSymLinks
    AllowOverride All
    LoadModule rewrite_module modules/mod_rewrite.so 这一行的注释要去掉
    

    然后重启动apache服务器。

    编辑apahce中web根目录下.htaccess文件(如题没有此文件,则直接新建立一个既可)。

    RewriteEngine On
    RewriteCond %{HTTP_HOST} ^fandouzi.com [NC]
    RewriteRule ^(.*) http://www.fandouzi.com/ [R=301,L]

    访问fandouzi.com同样会转向到www.fandouzi.com。

linux下使用yum安装Apache+php+Mysql+phpMyAdmin [转载]

    适用redhat于32位及64位,前提架设好本地源。在这里不再赘述。

    1 安装Apache+php+Mysql

    a、安装Apahce, PHP, Mysql, 以及php连接mysql库组件 yum -y install httpd php mysql mysql-server php-mysql

    b、安装mysql扩展 yum -y install mysql-connector-odbc mysql-devel libdbi-dbd-mysql

    或一次性粘贴安装:

    yum -y install httpd php mysql mysql-server php-mysql httpd-manual mod_ssl mod_perl mod_auth_mysql php-mcrypt php-gd php-xml php-mbstring php-ldap php-pear php-xmlrpc mysql-connector-odbc mysql-devel libdbi-dbd-mysql

    c、设置mysql数据库root帐号密码。
    mysqladmin -u root password ‘newpassword’ [引号内填密码]

    d、 让mysql数据库更安全
    mysql -u root -p [此时会要求你输入刚刚设置的密码,输入后回车即可

    mysql> DROP DATABASE test; [删除test数据库]
    mysql> DELETE FROM mysql.user WHERE user = ”; [删除匿名帐户]
    mysql> FLUSH PRIVILEGES; [重载权限]

    e、 按照以上的安装方式, 配置出来的默认站点目录为/var/www/html/新建一个php脚本:

    2、安装phpMyAdmin
    进入phpMyAdmin官方下载(不要最新版本,下phpMyAdmin 2.11.9.5就行了,3.1以上需php 5.2以上),上传到你的网站目录下,然后进行配置。只需几步即可搞定。
    I. config.sample.inc.php更名为config.inc.php;
    II. 打开config.inc.php文件,进行以下修改;
    // $cfg[‘Servers’][$i][‘controluser’] = ‘pma’;
    // $cfg[‘Servers’][$i][‘controlpass’] = ‘pmapass’;
    // $cfg[‘Servers’][$i][‘pmadb’] = ‘phpmyadmin’;
    // $cfg[‘Servers’][$i][‘bookmarktable’] = ‘pma_bookmark’;
    // $cfg[‘Servers’][$i][‘relation’] = ‘pma_relation’;
    // $cfg[‘Servers’][$i][‘table_info’] = ‘pma_table_info’;
    // $cfg[‘Servers’][$i][‘table_coords’] = ‘pma_table_coords’;
    // $cfg[‘Servers’][$i][‘pdf_pages’] = ‘pma_pdf_pages’;
    // $cfg[‘Servers’][$i][‘column_info’] = ‘pma_column_info’;
    // $cfg[‘Servers’][$i][‘history’] = ‘pma_history’;
    // $cfg[‘Servers’][$i][‘designer_coords’] = ‘pma_designer_coords’;

    去掉每行前面的//;
    II.$cfg[‘blowfish_secret’] = ”; |修改为| $cfg[‘blowfish_secret’] = ‘http’;
    IV.$cfg[‘Servers’][$i][‘controluser’] = ‘pma’; |把’pma’修改为你的帐号|$cfg[‘Servers’][$i][‘controlpass’] = ‘pmapass’; |把’pmapass设置为你的mysql登录密码|
    V. $cfg[‘blowfish_secret’] = ”; | 添加短语密码例如:$cfg[‘blowfish_secret’] = ‘onohot’;

    3、//安装php的扩展
    yum -y install php-gd php-xml php-mbstring php-ldap php-pear php-xmlrpc

    4、//安装apache扩展

    yum -y install httpd-manual mod_ssl mod_perl mod_auth_mysql

    5、 配置防火墙
    添加允许访问HTTP、FTP端口

    iptables -I RH-Firewall-1-INPUT -m state –state NEW -m tcp -p tcp –dport 21 -j ACCEPTiptables -I RH-Firewall-1-INPUT -m state –state NEW -m tcp -p tcp –dport 80 -j ACCEPT
    重启iptables: service iptables restart
    转载于:linux下使用yum安装Apache+php+Mysql+phpMyAdmin – – ITeye技术网站.

Linux上vi(vim)编辑器使用教程 – 转载

    vi(vim)是上Linux非常常用的编辑器,很多Linux发行版都默认安装了vi(vim)。vi(vim)命令繁多但是如果使用灵活之后将会大大提高效率。vi是“visual interface”的缩写,vim是vi IMproved(增强版的vi)。在一般的系统管理维护中vi就够用,如果想使用代码加亮的话可以使用vim。下面vps侦探整理一下vi的使用教程:包含vi的基本介绍、使用模式、文件的打开关闭保存、插入文本或新建行、移动光标、删除、恢复字符或行、搜索等等,算是一篇比较适合新手学习vi的教程。

    vi有3个模式:插入模式、命令模式、低行模式。

    插入模式:在此模式下可以输入字符,按ESC将回到命令模式。
    命令模式:可以移动光标、删除字符等。
    低行模式:可以保存文件、退出vi、设置vi、查找等功能(低行模式也可以看作是命令模式里的)。

    一、打开文件、保存、关闭文件(vi命令模式下使用)

    vi filename       //打开filename文件
    :w       //保存文件
    :w vpser.net //保存至vpser.net文件
    :q          //退出编辑器,如果文件已修改请使用下面的命令
    :q!        //退出编辑器,且不保存
    :wq         //退出编辑器,且保存文件
    

    二、插入文本或行(vi命令模式下使用,执行下面命令后将进入插入模式,按ESC键可退出插入模式)

    
    a      //在当前光标位置的右边添加文本
    i       //在当前光标位置的左边添加文本
    A     //在当前行的末尾位置添加文本
    I      //在当前行的开始处添加文本(非空字符的行首)
    O     //在当前行的上面新建一行
    o     //在当前行的下面新建一行
    R    //替换(覆盖)当前光标位置及后面的若干文本
    J    //合并光标所在行及下一行为一行(依然在命令模式)
    

    三、移动光标(vi命令模式下使用)

    1、使用上下左右方向键

    2、命令模式下:h 向左、j 向下 、k 向上、l 向右。
    空格键 向右、Backspace 向左、Enter 移动到下一行首、- 移动到上一行首。
    四、删除、恢复字符或行(vi命令模式下使用)

    
    x         //删除当前字符
    nx         //删除从光标开始的n个字符
    dd      //删除当前行
    ndd   //向下删除当前行在内的n行
    u       //撤销上一步操作
    U      //撤销对当前行的所有操作
    

    五、搜索(vi命令模式下使用)

    
    /vpser     //向光标下搜索vpser字符串
    ?vpser     //向光标上搜索vpser字符串
    n           //向下搜索前一个搜素动作
    N         //向上搜索前一个搜索动作
    

    六、跳至指定行(vi命令模式下使用)

    
    n+        //向下跳n行
    n-         //向上跳n行
    nG        //跳到行号为n的行
    G           //跳至文件的底部
    

    七、设置行号(vi命令模式下使用)

    
    :set  nu     //显示行号
    :set nonu    //取消显示行号
    

    八、复制、粘贴(vi命令模式下使用)

    
    yy    //将当前行复制到缓存区,也可以用 "ayy 复制,"a 为缓冲区,a也可以替换为a到z的任意字母,可以完成多个复制任务。
    nyy   //将当前行向下n行复制到缓冲区,也可以用 "anyy 复制,"a 为缓冲区,a也可以替换为a到z的任意字母,可以完成多个复制任务。
    yw    //复制从光标开始到词尾的字符。
    nyw   //复制从光标开始的n个单词。
    y^      //复制从光标到行首的内容。  VPS侦探
    y$      //复制从光标到行尾的内容。
    p        //粘贴剪切板里的内容在光标后,如果使用了前面的自定义缓冲区,建议使用"ap 进行粘贴。
    P        //粘贴剪切板里的内容在光标前,如果使用了前面的自定义缓冲区,建议使用"aP 进行粘贴。
    

    九、替换(vi命令模式下使用)

    
    :s/old/new      //用new替换行中首次出现的old
    :s/old/new/g         //用new替换行中所有的old
    :n,m s/old/new/g     //用new替换从n到m行里所有的old
    :%s/old/new/g      //用new替换当前文件里所有的old
    

    十、编辑其他文件

    :e otherfilename    //编辑文件名为otherfilename的文件。
    

    十一、修改文件格式

    :set fileformat=unix   //将文件修改为unix格式,如win下面的文本文件在linux下会出现^M。
    

    总结:vi(vim)教程虽然有比较多的命令,但是只要勤加练习,相信你会很快的熟练掌握,同时也会给你的工作或学习带来更高的效率。当如果不知道自己处在什么模式时可以按2次Esc键即可回到命令模式,会有最后提醒一点:注意大小写!!!
    文章来源:Linux上vi(vim)编辑器使用教程 – VPS侦探.

mac系统如何显示和隐藏文件(转载)

    苹果Mac OS X操作系统下,隐藏文件是否显示有很多种设置方法,最简单的要算在Mac终端输入命令。显示/隐藏Mac隐藏文件命令如下(注意其中的空格并且区分大小写):

    显示Mac隐藏文件的命令:defaults write com.apple.finder AppleShowAllFiles -bool true

    隐藏Mac隐藏文件的命令:defaults write com.apple.finder AppleShowAllFiles -bool false

    或者

    显示Mac隐藏文件的命令:defaults write com.apple.finder AppleShowAllFiles YES

    隐藏Mac隐藏文件的命令:defaults write com.apple.finder AppleShowAllFiles NO

    输完单击Enter键,退出终端,重新启动Finder就可以了

    重启Finder:鼠标单击窗口左上角的苹果标志–>强制退出–>Finder–>重新启动

mac(Linux)下批改mysql服务器的默认字符集为utf8

    在终端操作数据库:
    mysql> show variables like ‘%char%’;
    +————————–+——————————————————–+
    | Variable_name | Value |
    +————————–+——————————————————–+
    | character_set_client | utf8 |
    | character_set_connection | utf8 |
    | character_set_database | latin1 |
    | character_set_filesystem | binary |
    | character_set_results | utf8 |
    | character_set_server | latin1 |
    | character_set_system | utf8 |
    | character_sets_dir | /usr/local/mysql-5.6.19-osx10.7-x86_64/share/charsets/ |
    +————————–+——————————————————–+
    这里可以看见 character_set_database 和 character_set_server 都是默认的latin1,这就表明创建的数据库和表都是以latin1为字符集的,在这种情况下,无法正常使用中文! 下面简单说一下怎么更改这个默认字符集:
    1.将本地mysql目录中的支持文件my-xxxx.cnf copy到/etc/my.cnf 命令:( sudo cp /usr/local/mysql/support-files/my-default.cnf /etc/my.cnf )
    2.编辑my.cnf 命令(sudo vi /etc/my.cnf )
    3.在文件中添加两段代码:“括号中没有的自己补上”
    在[client]部分加入:
    default-character-set = utf8
    在[mysqld]部分加入:
    character-set-server = utf8
    4.重启mysql;
    (提示,如果重启失败,尝试将[client]下面的default-character-set=utf8改成[mysqld]中的一样)

    然后就可以查看字符集是否修改成功了,登录mysql 命令查询:
    mysql> show variables like ‘%char%’;
    +————————–+——————————————————–+
    | Variable_name | Value |
    +————————–+——————————————————–+
    | character_set_client | utf8 |
    | character_set_connection | utf8 |
    | character_set_database | utf8 |
    | character_set_filesystem | binary |
    | character_set_results | utf8 |
    | character_set_server | utf8 |
    | character_set_system | utf8 |
    | character_sets_dir | /usr/local/mysql-5.6.19-osx10.7-x86_64/share/charsets/ |
    +————————–+——————————————————–+
    8 rows in set (0.00 sec)
    这样就成功了。

Javascript中write的注意事项

    在网页的学习中,需要利用js向页面写入文字,此时需要用到document.write();

    但是,使用这个方法的时候需要注意,如果在页面都加载完成后调用这个方法,将会导致之前的内容全被它给覆盖重写。

    例如:

    <html>
    <head>

    <script type=”text/javascript”>
    function myfunction(txt)
    {
    document.write(txt);
    }
    </script>

    </head>
    <body>

    <form>
    <input type=”button” onclick=”myfunction(‘哎呀!我赢了!你们都不见啦,哈哈!’)” value=”点我试试!”>
    </form>

    <p>通过点击这个按钮,可以调用一个函数。该函数会输出传递给它的参数。 此时所有内容被重写!</p>

    </body>
    </html>