得意淡然,失意坦然;喜而不狂,忧而不伤。

Apache和Nginx下配置环境变量的方法(DB,MC配置)

Linux/Unix admin 1562次浏览 已收录 0个评论 扫描二维码

一、apache配置方法

官方文档

 

SetEnv Directive

 

Description: Sets environment variables
Syntax: SetEnv env-variable value
Context: server config, virtual host, directory, .htaccess
Override: FileInfo
Status: Base
Module: mod_env

 

Sets an internal environment variable, which is then available to Apache HTTP Server modules, and passed on to CGI scripts and SSI pages.

Example

<span class="kwd" style="color: rgb(17, 34, 136); font-weight: bold;">SetEnv</span><span class="pln"> SPECIAL_PATH </span><span class="pun" style="color: rgb(102, 102, 0);">/</span><span class="pln">foo</span><span class="pun" style="color: rgb(102, 102, 0);">/</span><span class="pln">bin</span>

The internal environment variables set by this directive are set after most early request processing directives are run, such as access control and URI-to-filename mapping. If the environment variable you're setting is meant as input into this early phase of processing such as the RewriteRule directive, you should instead set the environment variable with SetEnvIf.

 

写法:

 

###  Mysql ###

SetEnv SINASRV_DB3_HOST         "10.210.74.80"

SetEnv SINASRV_DB3_PORT         "3600"

SetEnv SINASRV_DB3_USER         "miniblog"

SetEnv SINASRV_DB3_PASS         "asdf123456"

SetEnv SINASRV_DB3_NAME         "welfare"

SetEnv SINASRV_DB3_HOST_R       "10.210.74.80"

SetEnv SINASRV_DB3_PORT_R       "3600"

SetEnv SINASRV_DB3_USER_R       "miniblog"

SetEnv SINASRV_DB3_PASS_R       "asdf123456"

SetEnv SINASRV_DB3_NAME_R       "welfare"

测试:

print_r($_SERVER);

 

二、Nginx下配置方法

官方文档:

 

fastcgi_param

语法fastcgi_param parameter value 

默认值:none 

使用字段:http, server, location 

指定一些传递到FastCGI服务器的参数。

可以使用字符串,变量,或者其组合,这里的设置不会继承到其他的字段,设置在当前字段会清除掉任何之前的定义。

下面是一个PHP需要使用的最少参数:

fastcgi_param  SCRIPT_FILENAME  /home/www/scripts/php$fastcgi_script_name;
fastcgi_param  QUERY_STRING     $query_string;

PHP使用SCRIPT_FILENAME参数决定需要执行哪个脚本,QUERY_STRING包含请求中的某些参数。

如果要处理POST请求,则需要另外增加三个参数:

fastcgi_param  REQUEST_METHOD   $request_method;
fastcgi_param  CONTENT_TYPE     $content_type;
fastcgi_param  CONTENT_LENGTH   $content_length;

如果PHP在编译时带有–enable-force-cgi-redirect,则必须传递值为200的REDIRECT_STATUS参数:

fastcgi_param  REDIRECT_STATUS  200;

写法:

  1、创建文件resources.conf

 

fastcgi_param DB_HOST_M "127.0.0.1";

fastcgi_param DB_NAME_M "miniblog";

fastcgi_param DB_PASS_M "asdf123456";

fastcgi_param DB_PORT_M "3306";

fastcgi_param MC_BASIC  "127.0.0.1::11211";

 

2、编辑nginx.conf,在对应vhost下增加 include resources_params;

 

location ~ / {

            fastcgi_param SCRIPT_FILENAME /data/www/www/index.php;

            fastcgi_pass  127.0.0.1:9000;

            fastcgi_index index.php;

            include fastcgi_params;

            include resources_params;

        }

 

 

3、测试

print_r($_SERVER);


pitata技术乐园 , 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明Apache和Nginx下配置环境变量的方法(DB,MC配置)
喜欢 (0)
[103531948@qq.com]
分享 (0)
发表我的评论
取消评论
表情 斜体

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址