首页 » SEO优化 » php断定是否离线技巧_PHP项目若何分离本地测试和分娩情形设备

php断定是否离线技巧_PHP项目若何分离本地测试和分娩情形设备

访客 2024-11-21 0

扫一扫用手机浏览

文章目录 [+]

示例代码:

<?php

php断定是否离线技巧_PHP项目若何分离本地测试和分娩情形设备

header('Content-Type:text/html;charset=utf-8');

php断定是否离线技巧_PHP项目若何分离本地测试和分娩情形设备
(图片来自网络侵删)

//根据环境变量定义当前代码支配环境

define('RUN_ENV', isset($_SERVER['RUN_ENV']) ? $_SERVER['RUN_ENV'] : 'product');

define('APP_ROOT', dirname(dirname(__FILE__)) . '/');

//通过RUN_ENV宏定义来引入各个环境的差异配置文件(紧张涉及数据库、Memcache、Redis等)

require_once APP_PATH . '/conf/'.RUN_ENV.'config.php';

1)nignx配置示例:

server {

listen 80;

server_name www.google.com;

index index.html index.shtml index.htm index.php;

root /www/www.google.com/html/;

location ~ .\.php?$

{

proxy_read_timeout 300;

proxy_connect_timeout 300;

fastcgi_pass 127.0.0.1:9000;

fastcgi_index index.php;

include fastcgi.conf;

#environment param config

fastcgi_param RUN_ENV 'develop';

}

access_log /www/logs/www.google.com.log;

error_log /www/logs/www.google.com.err;

if (!-e $request_filename)

{

rewrite ^/(.+)$ /index.php last;

}

if ( $fastcgi_script_name ~ \..\/.php )

{

return 403;

}

}

2)Apache配置示例:

<VirtualHost :80>

SetEnv RUN_ENV 'develop'

DocumentRoot \公众/www/www.google.com/www\公众

ServerName 127.0.0.10

ServerAlias

<Directory />

Options FollowSymLinks ExecCGI

AllowOverride All

Order allow,deny

Allow from all

</Directory>

</VirtualHost>

不敷:这种配置办法仅适用通过Web做事器(nginx或Apache)来访问php脚本的,不适用php-cli模式。

2.设置php-fpm的环境变量

env[RUN_ENV] = develop

不敷:适用php-fpm模式(一样平常都是通过Web做事器访问的模式),不适用php-cli模式。

3.通过引入外部私有目录的配置文件

示例代码:

<?php

header('Content-Type:text/html;charset=utf-8');

//根据文件配置定义当前代码支配环境

$run_env_file = \"大众/www/private/www.google.com/config.txt\公众;

$run_env = file_exists($run_env_file) ? file_get_contents($run_env_file) : 'product';

define('RUN_ENV', $run_env);

define('APP_ROOT', dirname(dirname(__FILE__)) . '/');

//通过RUN_ENV宏定义来引入各个环境的差异配置文件(紧张涉及数据库、Memcache、Redis等)

require_once APP_PATH . '/conf/'.RUN_ENV.'config.php';

优点:适用各种各样的调用姿势,如php-fpm模式、php-cli模式。

不敷:对生产环境的性能有一定影响,由于生产环境的机器如果集群太大的话,我们每个去放这个私有配置文件是特殊不划算的,而且我们的原则一样平常生产环境都是不放的,代码直接实用模式的生产环境配置。
但是文件不存在的话,对Linux来说就无法利用文件的页缓存,每次都要进行磁盘I/O去判断文件是否存在,这个性能损耗对生产环境来说特殊不友好。
一样平常这种办法作为php-cli模式的补充会更好一点,毕竟php-cli模式一样平常都是离线在处理一些数据,调用频率也不会特殊高。

这里说一下,一样平常只有本地和测试环境才须要配置这个环境变量,生产环境一样平常都不用去分外配置,通过代码默认设置为采取生产环境的配置。
本篇文章紧张是针对给新手看到哈,不喜勿喷~

标签:

相关文章

介绍百度网盘,云端存储时代的创新先锋

随着互联网技术的飞速发展,云计算已经成为现代生活不可或缺的一部分。而在这其中,百度网盘作为国内领先的云存储服务提供商,以其卓越的性...

SEO优化 2025-01-03 阅读1 评论0

介绍监控屏蔽技术,守护个人隐私的利器

随着科技的发展,监控设备已经深入到我们生活的方方面面。在享受便利的隐私安全问题也日益凸显。如何有效屏蔽监控,保护个人隐私,成为人们...

SEO优化 2025-01-03 阅读1 评论0

介绍番号观看方法,轻松驾驭影视世界

随着互联网的普及,网络影视资源日益丰富,番号作为影视作品的标识码,已经成为广大观众了解、搜索和观看影视作品的重要途径。如何正确地使...

SEO优化 2025-01-03 阅读1 评论0

介绍盗微信号黑幕,网络安全的严峻挑战

在数字化时代,微信已成为人们生活中不可或缺的通讯工具。随着微信用户数量的激增,盗微信号的事件也日益增多。本文将深入剖析盗微信号的方...

SEO优化 2025-01-03 阅读1 评论0