单个PHP文件我需要以CGI身份运行

时间:2012-03-27 03:20:45

标签: php perl apache .htaccess

我有一个遗留程序,我需要使用扩展名.cgi(search.cgi)运行,但我已经使用PHP重写了这段代码。

如何告诉Apache引用search.cgi但让它运行search.php?

3 个答案:

答案 0 :(得分:3)

使用apache的url重写mod。 像

这样的东西
RewriteEngine on
RewriteRule ^/search.cgi$ /search.php [QSA]

您可以通过ixsearch.cgi更改search.cgi 或者更一般

RewriteEngine on
RewriteRule ^/([a-z0-9_\-]+)\.cgi$ /$1.php [NC, QSA]

这将在yourdomain.com/{some_scriptname}.php中重写任何url yourdomain.com/@some_scriptname}.cgi(并且由于QSA子句而重写请求GET参数) 脚本名称可以包含a和z之间的任何字母或数字或字符,如 - 或_(前番茄汁)。此外,它不区分大小写(感谢NC条款)

答案 1 :(得分:1)

使用mod_rewrite将search.cgi的请求重写为search.php。

答案 2 :(得分:0)

只需将其作为常规CGI编写,就像使用PHP的命令行版本一样运行,以便它像常规CGI一样运行。