Sunday, August 15, 2010

访问网站出现Failed to access IIS metabase报错


访问网站出现Failed to access IIS metabase报错

Source: Link
问题原因:IIS没有注册!
解决步骤:
在CMD中进入目录C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727,运行aspnet_regiis

1、aspnet_regiis -ga administrator(administrator为当前用户)

2、aspnet_regiis -i (注册IIS)

3、iisreset /noforce (重启IIS)

Monday, August 9, 2010

写作英文论文的一些心得

来自:Link
对经济学新人来说,不管论文写几十页,除了倒霉的匿名审稿人之外,没人会花超过五分钟去读。那么合理的写作策略就是最大程度的节省读者的阅读时间,最有效的传递信息。具体而言,我力图达到以下目标:
1. 如果读者只有十秒钟,他也应该清楚地知道我干了什么,主要结果是什么,用了什么数据,贡献在哪里。
2. 如果读者有三十秒,他应该在得知以上信息的基础上,知道我是这么论证的,并且能够快速在三四十页的论文中准确地找到他想读的内容。
3. 如果读者有一分钟,他应该能知道80%的论文内容,并且觉得似乎应该多花两分钟再看看。
4. 如果读者有三分钟,他应该能准确地知道我在讨论的这件事的来龙去脉,准确地知道我的方法我的假设。如果我是一个推销员的话,我必须做到在三分钟内把最重要的卖点都说清楚了,说好了,至于读者买不买,那是另一回事了。
5. 如果读者是匿名审稿人,必须花几十分钟读论文的话,那我要做到最小化他的阅读负担,别把他老人家惹毛了。

如何达到以上目标呢?我总结的心得散见于各位大牛给年轻人的写作建议中,我只是把它们换成我的方式再表达出来。这些建议都宝贵,我读过不少于十遍,写作的时候更是隔三岔五拿出来对照一番,每次都有收获。Mankiew收集的建议在这里 Blattman收集了另一些在这里

一、如果读者只有十秒,他只会读ABSTRACT. 这个东西极端重要,首先它是论文的第一段,读者这时候注意力还集中着,脑子还转着。一般而言,读者在读完三段以后注意力就散的差不多了,所以头三板斧(段)很重要。其次它一般也是论文的最后一段,读者读完这段才决定是不是往下看,大部分时候就不继续看了。
所以ABSTRACT要把所有重要的内容表述出来,不能超过150字。对empirical的论文来说,这段要包括研究的问题,使用的数据,identification,和所有重要的估计结果,带数字的。
有一回我把ABSTRACT写到150字了,觉得巨满意,简洁得不行,简直不能再多删一个字。后来去投稿,学报要求必须在100字以内,而且是网络提交,网页的对话框是设定好的,一超过100字就变红字,那是相当吝啬没办法,再重写。删啊删的,硬是砍掉了50多字,居然也没觉得损失什么内容。可见曾经自鸣得意的简介,如果再使劲儿逼一下,还是有三分之一多的水分。
要投出去的论文,不管是学报也好,JMP也好,应该尽量没有因为写作而造成的水分。

二、如果读者有30秒,他会在看完ABSTRACT之后迅速浏览论文的章节结构,这时候章节的标题怎么写就很重要了。
原则是:章节的标题要传递信息,除了IntroductionConclusions之外,所有的标题都应该有内容。
比如,如果一个章节叫“Data”, 那就没有内容。如果叫“Data: CPS 1990-2000”,这就是有内容。或者删掉“data”这个词,直接用数据名称做标题,别担心,傻子也会知道那是数据名称,干嘛还非得写”DATA”这个词儿呢?
再比如写作估计结果时,如果那部分标题就叫”Results” 那就没内容,或者叫“Effects of X on Y,也没有内容。有内容的写法大概类似于“Higher X, Higher Y”。就像做slides的标题一样,每个标题都直陈了结果。
标题要用几个字来传递具体的信息,所以浏览一遍标题之后,读者就应该具体的知道更多的信息,并且能够准确的找到他感兴趣的内容在哪里,然后读下去。
如果标题仅仅是“data”,“Specifications”, Identification”之类的单词,那就没有内容,那就是逼着读者往细了看。没人愿意被逼着往细了看,所以人家干脆不看。

三、如果读者有一分钟,他应该能读完这篇论文每一段的第一句话。每一段的第一句话都要“管用”,如果读者只读第一句话的话,我必须保证他不会错过最重要的内容。
具体操作上有三点:1)第一句坚决不是铺垫,然后第二句用什么HOWEVER转回来。又不是玩儿躲猫猫,没什么好转来转去的。第一句就是直接表达本段的意思,本段的其他内容都是细节,没有多于第一句所陈述的内容;2)第一句一定要短,不得不用从句的话,不用多于一个的从句,否则就没意思了;3)单句不成段。论文不是小说,更不是现代诗一路回车。
基本上读者能在一分钟内浏览完了每一个第一句,我论文80%的内容他就应该知道了,想再读的话,去读INTRODUCTION吧。

四、如果读者有三分钟的话,INTRODUCTION就是他要读的全部了。
这个相对简单多了,因为三分钟差不多能读一千字,周旋的余地能大很多。怎么写INTRODUCTION的经验之谈有很多,我不重复。我个人认为重要的方法有:1)不超过三页;2)文献尽量放在脚注中,第一不占地方,第二不阻隔遣词造句,一会儿一个括号一会儿一个人名的,看着和狗皮膏药似的,难看;3)先写要解释的现象本身,再写怎么解释的,最后谈贡献;4)不要出现类似“it is important”的字眼,一件事儿重要与否不取决于你自己说“这是重要的”,直接说事儿,让读者自己判断重要不重要。只有底气不足或者没话可说的人,才隔三岔五就来一句”it is important”,吆喝卖大力丸似的。

五、如果读者是审稿人,真的需要花几十分钟细读的话,写得好点儿,短点儿,短点儿,短点儿,短点儿,再短点儿。
我不相信这世上有“客观存在的真理”,不管你做的是物理化学还是社会科学,都不过是看问题的角度和论述的技巧。哈佛经济系给研究生的“第二写作定理”就是:你的论文质量只取决于你是怎么写的。再牛逼的想法,写砸了就是砸了,没救。(“第一写作定理”是:你的论文多半得不了诺贝尔奖。)
最让我受益的写作建议来自Deirdre McCloskey教授:写完每一句之后都紧接着问一个“SO WHAT?!”(那有如何呢?),然后往下接,如果接不下去,刚写完那句根本就没有存在的必要,删掉。

最后一条我觉得非常有用的写论文建议来自David Romer教授,可以用五个短语概括:Just Write! Just Write! Just Write! Just Write! Just Write!
啥也别干,就是写,论文是写出来的,不是想出来的。

Wednesday, August 4, 2010

apache + mysql+php+phpmyadmin(2)

资料找的不对的话,配置一些软件环境就成了件让人头很大的事情。按照上一个帖子配置好apache和php之后,工作正常,但是在安装phpmyadmin的时候就会出现找不到extension的问题了。在综合了一下两个帖子后,最终成功解决了问题。特别注意的是php.ini要放在windows目录下,而非windows\system32。
1. From link

libmysql.dll是否真的要拷贝到c:\windows目录下呢?

很多安装PHP教程,都是教大家把php里的libmysql.dll拷贝到c:\windows目录下(有的教程会说还要把php.ini等文件拷到系统目录的,其实一个文件都不用拷贝去的。)。
是否一定要这样做呢?很多网上的帖子都是人云亦云,别人说要,他也说要。

其实用的,每次重装系统,都这样拷一遍,折腾一遍,太辛苦了。

用过APMServ这个傻瓜式安装包的朋友可能会发觉,这个东西,在第一次安装后,以后重装系统也不会重新安装的,只要运行一下主程序,就可以运行WAMP的了,不用折腾一遍的。
可能有人会认为它把libmysql.dll拷贝到c:\windows目录下了,其实不是的,不信去找一找。

既然APMServ可以做到,那么我们也可以做得,比对了APMServ和我们安装的WAMP,找到奥妙就在apache的httpd.conf配置文件。
在httpd.conf加载PHP时,大家都知道是添加这句:
LoadModule php5_module E:\server\php528\php5apache2_2.dll

可能有些朋友也知道,添加这句后,就不用把php.ini拷贝到系统目录:
PHPIniDir E:\server\php528\php.ini

现在我说说不用把libmysql.dll拷到系统目录的办法,就是在加载php5_module前,添加这句:
LoadFile "E:\server\php528\libmysql.dll"
2. Link
When you finish installing phpMyAdmin on your windows OS, you may see this error msg below your phpMyAdmin screen after you logging in. I try googling for solution and none of them working on my windows system. But i get a conclusion from those articles i read and Yes i get the solution.
First there aren’t MySQL or PhpMyAdmin prolems. it’s PHP problem that can’t load this extension. Now you can open your php initialization file “php.ini” it’s ono your php installation directory (i.e c:\program files\php\). You must make sure that php extension directory is set up at the right place, on my pc it’s on”C:\Program Files\PHP\ext”. then you can open comment on this line “;extension=php_mcrypt.dll”.
Until this step actualy i have done the right things and surely this must work, after i restart my Apache Server this isn’t progress at all . I try googling and googling but none of them solved my problem until i read article on install mysql that must put the libray on to the windows directory than i realize this is must be the solution.
I put the library on windows system (c:\windows\) not the php_mcrypt.dll but libmcrypt.dll (mine in c:\program files\php\) , restart the Apache and ….. this is SOLVED…
Phew after a night and a half day ….

Tuesday, August 3, 2010

PHP and Apache configuration

配置php和apache环境,开始怎么配置都不成功。按照这个帖子做了一遍还是不成功。最后才发现是在修改httpd.conf的时候有两行少了个空格。。。。如红色标记所示
PHP5+APACHE2.2配置成功案例:
第一、安装并配置APACHE(以我的为例,安装到E:\Program Files\Apache Software Foundation\Apache2.2)
1、安装时默认安装,Network Domain, Server Name 我填写我的计算机名,Administrator's Email Address区域填你的邮件地址
2、安装完后在安装目录下有个conf文件夹,打开httpd.conf文件进行配置
·找到 DocumentRoot ,将其设置为你所要存放php, htm等网页文件的文件夹,如 "E:\Program Files\Apache Software Foundation\Apache2.2\htdocs";
·找到 DirectoryIndex ,在index.html后添加index.php, index.htm等,以单个空格将其分开;
·重启Apache,用http://localhost/http://127.0.0.1/http://yourcompanyname/测试是否成功。成功的话屏幕会有个It works!
第二、安装配置PHP(解压PHP压缩包到d:\php\)
1、将php.ini-recommended文件重命名为php.ini并将其剪到系统所在目录下(如放在2000/NT的WINNT/system32, XP的Windows/system32目录下),
2、将extension_dir 改为php/ext所在目录,如 "d:\php\ext";
3、将doc_root 改为第一步中的同样目录,如 "E:\Program Files\Apache Software Foundation\Apache2.2\htdocs";
4、找到 ;session.save_path = "/tmp" ,将';'去掉,设置你保存session的目录,如session.save_path = "D:/php/session_temp";
5、然后把下面几句前面的分号去掉,以更好支持Mysql and PHPmyadmin
      extension=php_mbstring.dll
      extension=php_gd2.dll
      extension=php_mysql.dll
第三、PHP+APACHE
1、允许Apache将PHP程序作为模块来运行:
      打开httpd.conf,添加下面内容(位置任意):
      LoadModule php5_module "d:/php/php5apache2_2.dll"(特别注意这一条,很多地方是调用php5apache2.dll,这样在运行PHP代码时会提示httpd.exe应用程序错误)
      AddType application/x-httpd-php .php
      AddType application/x-httpd-php .htm
      (.htm, .php为可执行php语言的扩展名,也可加html, php3, php4,甚至txt)
(以下两步可以不需要)
2、如果你出于某种原因而需要在CGI模式中运行PHP程序(使用Php.exe),
      请将上面这一行变成注释(各行头加#即可),添加下面这些行:
      #     ScriptAlias /php/ "d:/php/"
      # AddType application/x-httpd-php .php
      #Action application/x-httpd-php "/php/php-cgi.exe"
3、现在apache 2 支持HTML而不支持PHP,先把下面几句加到d:\apache2\conf\httpd.conf去:
      # ScriptAlias /php/ "d:/php/"
      # AddType application/x-httpd-php .php
      #Action application/x-httpd-php "/php/php-cgi.exe"
  
第四、重起服务
1、在d:\PHP里找到php5ts.dll,libmysql.dll将其复制到c:\winnt\system32下(winNT/2000的机器),而winXP/2003是复制到c:\windows\system32下
2、测试Apache与php是否连接成功:
     启动start apache服务或者正在运行的就重新启动restart apache
3、在Web根目录下新建test.php(即E:\Program Files\Apache Software Foundation\Apache2.2\htdocs目下)



phpinfo();
?>
4、运行http://localhost/test.php
如果成功,则应该看到一个含有PHP徽标的网页,其中包含大量设置和其他信息
那么恭喜你
备注:
如果不能运行,使用传统的模块化方法安装PHP5.1.* + apache 2.2.2 后不能启动,
提示:
"Cannot load D:/php/php5apache2.dll into server: The specified module could not be found."
原因:
PHP压缩包里的php5apache2.dll只适用于apache2.0.*,是否把php5apache2.dll改为php5apache2_2.dll即第三步的第1小步
另外的解决方法:
下载(http://www.phpv.net/php5apache2.dll-php5.1.x.rar) 并解压.共有三个文件.
vcredist_x86.exe
php5apache2.dll
httpd.exe.manifest
1.将 php5apache2.dll 覆盖掉你原来PHP目录下的 php5apache2.dll 文件.
2.将 httpd.exe.manifest 文件复制到你的apache安装目录下的bin文件夹下.
3.双击运行vcredist_x86.exe安装.
完成!去重启你的apache试试吧.