Siyuan's Blog

  • 首页

  • 归档

  • 标签

  • 搜索

'解决 Apache2 自动补全扩展名的问题'

发表于 2013-04-23 |

下午在 Mac 上测试某 Wordpress 站的时候,发现一件很诡异的事情:

如果存在 news.php,那么 Safari 访问 http://wp3.dev/news 的时候会直接访问 news.php 而不执行 URL Rewrite 规则。

祭出 curl 看看 Header :

1
2
3
4
5
6
7
HTTP/1.1 200 OK
Date: Tue, 23 Apr 2013 10:12:23 GMT
Server: Apache/2.2.22 (Unix) DAV/2 PHP/5.4.6 mod_ssl/2.2.22 OpenSSL/0.9.8r
Content-Location: news.php
Vary: negotiate
TCN: choice
X-Powered-By: PHP/5.4.6

看到 Vary: negotiate 这行了咩?

这是因为 Apache2 打开了 MultiViews,所以服务器自动为我们选择了一个最适合的文件返回了。

知道问题在哪儿解决起来就很方便咯,在 Directory 段的 Options 配置项上去掉 MultiViews ,然后重启下 Apache2 就完成了。

PS: Mountain Lion 下一般是在 /private/etc/apache2/httpd-vhosts.conf 或者 /private/etc/apache2/users 里面,不知道长得什么样的话…… 举个栗子好了。

1
2
3
4
5
6
<Directory "/Users/swanaveline/Sites/wp3/public_html">
Options Indexes MultiViews FollowSymlinks
AllowOverride All
Order allow,deny
Allow from all
</Directory>

dotjs 是个好东西

发表于 2013-04-13 |

用 dotjs 跳过各种 XXX 网站的广告真是太方便了。。。

比如某些下种子的站点,会弹广告。

1
2
3
4
5
6
document.forms[0].onsubmit = function() {};
document.forms[0].submit();
window.setTimeout(function(){
window.open('', '_self', '');
window.close();
}, 1000);

搞定,打开后直接下载然后自动关闭窗口。

又比如说 爱自由 这种节操爆表的网站,居然禁止右键和点击,太无聊了。

1
2
document.body.onselectstart = null;
document.body.oncontextmenu = null;

两行 OK 了。

嗯,真是好用。。。

PS: 以上的网站脚本可以在 https://github.com/ym/dotjs 下载

使用 MySQLDump 修复奇怪的乱码问题

发表于 2013-04-04 |

最近在处理 奇遇花园 的一些历史遗留问题,遇到了一个实际上是用 latin1 存储但是数据库的字符集是 utf8 的数据库。

多年不碰字符集问题,手生了。。。

下午 iconv 搞了半天还是乱码,然后在 Wordpress Codex 上找到了解决方案:

操作前请先备份数据库哟骚年~

首先使用 MySQLDump 以 latin1 字符集导出数据

1
mysqldump -h sgdb.6.vu -u sgdb -p --opt --quote-names --skip-set-charset --default-character-set=latin1 sg_wordpress > db.sql

然后使用 MySQL Client 以 utf8 字符集导入收据

1
mysqldump -h sgdb.6.vu -u sgdb -p --default-character-set=utf8 sg_wordpress < db.sql

最后去 wp-config.php 里把编码改一下

1
define('DB_CHARSET', 'utf8');

搞定,起床吃早餐去。

1…8910…12

Siyuan Miao

35 日志
42 标签
GitHub Twitter
© 2018 Siyuan Miao
由 Hexo 强力驱动 v3.7.1
|
主题 — NexT.Mist v6.3.0