Chromium! 一个时代的开始

Chromium, Join us in an open-source browser project to help move the web forward

Chromium is the open-source project behind Google Chrome. We’re releasing a first look at Chromium and invite you to join us in our effort to:

  • Help build a safer, faster, and more stable way for all Internet users to experience the web
  • Create a powerful platform for developing a new generation of web applications
Flock 浏览器 创建

Apache2 jk 配置

因为不是每个应用都需要使用 jk 转发到 Tomcat 所以修改了下加载。
首先当前的 Ubuntu Server 似乎把 jk.conf 直接丢在 /etc/apache2/conf.d 下,而不是放在 /etc/apache2/mods-available 目录。
自然使用 sudo a2enmod jk 的时候就不会创建 /etc/apache2/mods-enabled/jk.conf 软连接。
所以先要把这个文件移到 /etc/apache2/mods-available:
sudo mv /etc/apache2/conf.d/jk.conf /etc/apache2/mods-available
修改 /etc/apache2/mods-available/jk.conf 内容如下:
JkWorkersFile /etc/libapache2-mod-jk/workers.properties

Where to put jk logs

JkLogFile /var/log/apache2/mod_jk.log

Set the jk log level [debug/error/info]

JkLogLevel info

Select the log format

JkLogStampFormat "[%a %b %d %H:%M:%S %Y]"

JkOptions indicate to send SSL KEY SIZE,

JkOptions +ForwardKeySize +ForwardURICompat -ForwardDirectories

JkRequestLogFormat set the request format

JkRequestLogFormat "%w %V %T"

将所有servlet 和jsp请求通过ajp13的协议送给Tomcat,让Tomcat来处理

#JkMount /servlet/* ajp13_worker
#JkMount /.jsp ajp13_worker
#JkMount /
.do ajp13_worker
JkShmFile /var/log/jk-runtime-status
#<LocationMatch .web-inf.="">

AllowOverride None

deny from all

#</LocationMatch>
也就是注释掉 JkMount 设置和 LocationMatch 节。
如果已经启动 jk 模块,需要自行创建一个软连接:
sudo ln -s /etc/apache2/mods-available/jk.conf /etc/apache2/mods-enabled/jk.conf
没有启用,直接使用 sudo a2enmod jk 即可。
然后创建一个 mods-optional 用来放置可选的模块配置文件。
sudo nano /etc/apache2/mods-optional/jk.conf
内容如下:
<IfModule mod_jk.c>

将所有servlet 和jsp请求通过ajp13的协议送给Tomcat,让Tomcat来处理

#JkMount /servlet/* ajp13_worker
JkMount /.jsp ajp13_worker
JkMount /
.do ajp13_worker
<LocationMatch '.WEB-INF.'>
#       AllowOverride None
        deny from all
</LocationMatch>
</IfModule>

也就是在 /etc/apache2/mods-available/jk.conf 注释掉的内容,并且加上了 IfModule mod_jk.c 判断。
最后就是在虚拟主机的配置文件中 Include:
sudo nano /etc/apache2/sites-available/test
示例内容如下:
<VirtualHost *:80>
        Servername www.test.com
        ServerAdmin webmaster@test.com
        DocumentRoot /var/www/jsp/test
        DirectoryIndex index.html index.htm index.jsp
        <Directory />
                Options FollowSymLinks
                AllowOverride None
        </Directory>
        <Directory /var/www/jsp/test>
                Options FollowSymLinks MultiViews
                AllowOverride None
                Order allow,deny
                allow from all
        </Directory>
        Include /etc/apache2/mods-optional/jk.conf
        ErrorLog /var/log/apache2/error.test.log
        # Possible values include: debug, info, notice, warn, error, crit,
        # alert, emerg.
        LogLevel warn
        CustomLog /var/log/apache2/access.test.log combined
        ServerSignature On
</VirtualHost>

一点题外话:最近配置 tomcat 虚拟主机的时候总是处理不了 *.do 转发,原因是一直以来都是将虚拟主机的 appBase 目录和应用的 docBase 目录放在同一目录下。
也就是 appBase 直接指向程序,docBase 为 . 当前目录。实际上这种配置不能完全满足需要。
修改 server.xml 相关部分如下:
      <Host name="www.test.com" debug="0"
            appBase="/var/www/jsp" unpackWARs="false"
            autoDeploy="false" xmlValidation="false" xmlNamespaceAware="false">
          <Context path="" docBase="test" />
          <Logger className="org.apache.catalina.logger.FileLogger"
                  directory="logs"
                  prefix="test_log." suffix=".txt" timestamp="true" />
      </Host>

Flock 浏览器 创建

Ubuntu 远程登录中文语言设置

因为默认会在控制台操作,所以安装 Ubuntu Server 的时候选择的还是英文,而不是中文。但是用 PuTTY 远程登录的时候,能显示命令的中文界面未尝不是件好事。
首先,看一下是否激活了 zh_CN.UTF-8 locale 设置。下面的命令:
cat /var/lib/locales/supported.d/local
如果没显示 zh_CN.UTF-8 UTF-8 可以直接编辑这个文件,加上这一行。当然可以执行命令:
sudo locale-gen zh_CN.UTF-8
建议完成后再配置一下 locale:
sudo dpkg-reconfigure locales
然后就是安装语言包了:
sudo apt-get install manpages-zh language-pack-zh
最后当然是设置一下 LANG 和 LANGUAGE 环境变量,可以在 PuTTY 中设置,也可以修改自己的 .profile
nano ~/.profile
在最后加上:
export LANG=zh_CN.UTF-8
export LANGUAGE=zh_CN:zh

Flock 浏览器 创建

隐藏 Apache 和 PHP 版本信息

在 http response 信息的 header 中有 Server 和 X-Powered-By 两个信息,分别是 Web 服务器版本信息和动态脚本的版本信息。
Ubuntu 下更是可怖,Server 中连加载了哪些模块也一一列出。
所以,最好是关掉这两个东东的输出。
其一,修改 apache 的 conf,将 ServerTokens 设置为 Prod。Server 就只会显示 Apache 了。
其二,修改 php 的 ini,将 expose_php 设置为 Off。那么就没有 X-Powered-By 信息。

Flock 浏览器 创建

好文大家读

嗯,关于 GxFxW 的技术论文这里是翻译。
文中提到的有两点:
其一,复位 RST 是关键。B/S 中只要有一方忽略或者验证 RST 的真实性就可以排除噪音干扰。
其二,强规则会带来 DoS 拒绝服务攻击的副作用。
最后的结论实际上是噪音 RST 是目前 TCP/IP 实现漏洞和不严格造成的,督促相关厂商就能够很快解决这一问题。
当然,不要让相关厂商刻意去为了某一目的反向加强这一漏洞或者实现更强的漏洞更为重要。
不管怎么样,这一机制带来的成本是巨大的。因为第二点中提到的副作用,其潜在维护成本更为巨大。

Flock 浏览器 创建

决定了,还是用 Django

前后思考了几个月,还是觉得光是空想没用。所以还是做点实在的。
不用去考虑太多,就是 Django 了。

另外,本本快废掉了,越来越慢。年底前一定要换一台台式机回来。
最近配好些 G31+E2160 19 寸宽屏的机器,感觉还不错,价格也很实惠。
咱自己也要想要,不用这个小本本了!

Flock 浏览器 创建

QQ for Linux

吃个饭回来,Google Reader 里面就挤满了 QQ for Linux 的消息。
虽然功能很弱,但还是有比较重要的群聊功能。
整体来说,现在的TM2008、QQ2009、Mac QQ、Linux QQ应该都是用的同一套框架。用户数据全部都丢到用户目录里。
所以,以前QQ的功能还的慢慢移植到新框架下来了。

Flock 浏览器 创建