解决LNMP环境下WordPress后台缺少"WP-ADMIN"路径

LNMP一键安装包也是老左比较喜欢使用的环境之一,昨天帮助一个网友搭建LNMP环境后发现登陆WP后台之后点击左侧的菜单发现直接跳转404错误,开始还以为数据库问题,视线朝上一看原来在地址栏中的路径缺少"wp-admin"路径。应该是wordpress重定向丢失。解决方法很简单,我们在/usr/local/nginx/conf/wordpress.conf文件进行修改。

location / {
index index.html index.php;
if (-f $request_filename/index.html){
rewrite (.

) $1/index.html break; } if (-f $request_filename/index.php){ rewrite (.

) $1/index.php;
}
if (!-f $request_filename){
rewrite (.*) /index.php;
}
}
rewrite /wp-admin$ $scheme://$host$uri/ permanent;

绿色部分为需要添加进去的,添加完毕后,重启lnmp就可以解决缺少wp-admin路径问题

/root/lnmp restart

出处: http://www.laozuo.org/649.html | 老左博客

USB调试不能弹出授权窗口 unauthorized 的解决办法

在首次使用adb connect,然后adb shell的时候,常常需要点击弹出的对话框,否则出现

error: device unauthorized. Please check the confirmation dialog on your device.
这种情况在没有显示屏的时候或者多人连接时不太方便。这时候想默认授权而不用点击对话框想要去除弹框。
先了解它的工作原理,以下来自
-------------------------------------以下为转载--------------------------------------------------------------------------------------------
http://blog.csdn.net/sowhat_ah/article/details/43307907

工作原理是什么?

原来在我们的PC机(以windows为例)上启动了adb.exe进程时,adb会在本地生成一对密钥adbkey(私钥)与adbkey.pub(公钥);

根据弹框提示“The computer's RSA key fingerprint is:xxxx”,可以看出是一对RSA算法的密钥,其中公钥是用来发送给手机的;

当你执行“adb shell”时,adb.exe会将当前PC的公钥(或者公钥的hash值)(fingerprint)发送给android设备;这时,如果android上已经保存了这台PC的公钥,则匹配出对应的公钥进行认证,建立adb连接;如果android上没有保存这台PC的公钥,则会弹出提示框,让你确认是否允许这台机器进行adb连接,当你点击了允许授权之后,android就会保存了这台PC的adbkey.pub(公钥);

当然手机厂商也有可能会内置一些adbkey.pub(公钥);

那么问题来了,这些密钥在PC与Android上分别存储在哪里?

首先PC上,以Windows7为例,当你首次启动adb.exe时,会在C盘的当前用户的目录下生成一个".android"目录,其中adbkey与adbkey.pub就在这个目录下;(adb.exe会在启动时读取这两个文件(没有就重新生成),所以如果你要是删除或者修改了这两个文件之后,必须要关闭adb.exe进程,重启之后才能生效;)

其次Android上,PC的公钥被保存在一个文件中"/data/misc/adb/adb_keys";

在知道了adb这种认证的原理之后,你可以在不希望自己android设备授权任何PC设备进行adb链接时,清除"/data/misc/adb/adb_keys"文件;

也可以在没有屏幕的情况下,让已经认证过的PC将你PC上的adbkey.pub中的公钥导入到android中的"/data/misc/adb/adb_keys"文件中,或者将已经认证过的PC机上的adbkey与adbkey.pub拷贝到本机上覆盖你自己的adbkey与adbkey.pub,然后重启adb.exe,即可执行adb命令;

-------------------------------------------------------以上为转载---------------------------------------------------------------------------------------------------------------

因此,方法一、 根据转载的文章。在机器上建立/data/misc/adb/adb_keys 以及 在PC上建立adbkey.pub。

方法二、修改framework的代码,这里重点要说的方法,经过实验成功。

修改文件 UsbDebuggingActivity.java

  @Override
    public void onReceive(Context content, Intent intent) {
        String action = intent.getAction();
        if (!UsbManager.ACTION_USB_STATE.equals(action)) {
            return;
        }


        //: usb show UI
        //boolean connected = intent.getBooleanExtra(UsbManager.USB_CONNECTED, false);
        boolean connected  = false;   //给connect赋值,关掉UI
        if (!connected) {
            mActivity.finish();
        }
   //allowUsbDebugging
   try {
   IBinder b = ServiceManager.getService(USB_SERVICE);     
      IUsbManager service = IUsbManager.Stub.asInterface(b);
   service.allowUsbDebugging(true, mKey);
        } catch (Exception e) {
        Log.e(TAG, "Unable to notify Usb service", e);
    }
   //<<end

    }
}

一人我编程累

一人 我编程累
累得只想把觉睡
两眼 是辛酸泪
代码咋写都不对

重启是也不行
关机它也不灵
我狂敲键盘怒砸鼠标
异常也不停

这循环它有点绕
注释也很微妙
我看了半天稀里糊涂马隔壁我草

加断点 再抵坝
堆栈瞬间就爆炸
日志输出如雨下
看到异常就害怕

调试一夜没人陪
心想这锅该归谁
回想当初心后悔
不该重构这地雷

翻日志 看半天
博客看了几百篇
闪退还是没复现
低头又点一根烟

加着班我心烦乱
烂摊子我不想干
离职损失就几万
一拍桌子把工作换

离职 我不再忙
在家 我守空房
我闲得无聊掏出电脑
代码又写几行