2011-06-14 48 views
1

我最初在LAMP服务器上建立了一个网站,但我的雇主需要它移动到WISP(windows/iis/sql server/php ..我不认为这是一个真正的术语? )服务器,我已经完成了。我正在使用IIS v 6,并且我读到没有SetEnv等价物,您可以在其中设置_SERVER变量。我依赖这些变量来进行一些配置,比如数据库用户/密码和用于散列的站点密钥。出于安全原因,我强烈希望保留这些代码。SetEnv with php.ini

我能想到的唯一解决方案是用php.ini设置这些变量。我相信你可以设置一个默认的数据库连接,但我宁愿不要这样做。 php.ini是否有SetEnv等效?

如果不是,这是否可以用IIS做呢?

例如,我希望能够使用自定义_SERVER[db_user]_SERVER[site_key]。在我当前的.htaccess中,我有

SetEnv db_user tandu 
SetEnv site_key blocked_for_your_protection 
+0

SetEnv语法仅适用于Apache。 – powtac 2011-06-14 12:51:36

回答

2

您在php.ini文件中设置服务器变量。检查该文件在服务器上的phpinfo()命令的输出。

看看documentation关于php.ini settings

要编辑_SERVER设置,你必须直接在您的服务器设置这些:

阿帕奇:工程与htaccess以及SetEnv
IIS:http://www.php.net/manual/en/function.putenv.php在您的*。PHP文件或在配置:

<serverVariables> 
    <set name="db_user" value="abc" /> 
    <set name="site_key" value="abc" /> 
</serverVariables> 

http://forums.iis.net/t/1171675.aspx

你可以在你的phpinfo页面上检查你的结果。变量必须发生在那里!

+0

太好了。 *你如何在你的'php.ini'文件中设置服务器变量? – 2011-06-14 12:33:19

+0

你想编辑哪一个? – powtac 2011-06-14 12:35:20

+0

我的意思是客户服务器变量,如'_SERVER [db_user]'或'_SERVER [site_key]' – 2011-06-14 12:36:21

0

您可以随时用Start > Control Panel > System > Environment设置一个真实的环境变量并阅读它。然后,设置对于机器上运行的所有软件都是可见的。