Files
shop-platform/src/index.php

86 lines
2.5 KiB
PHP
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<?php
// +----------------------------------------------------------------------
// | ThinkPHP [ WE CAN DO IT JUST THINK ]
// +----------------------------------------------------------------------
// | Copyright (c) 2006-2019 http://thinkphp.cn All rights reserved.
// +----------------------------------------------------------------------
// | Licensed ( http://www.apache.org/licenses/LICENSE-2.0 )
// +----------------------------------------------------------------------
// | Author: liu21st <liu21st@gmail.com>
// +----------------------------------------------------------------------
// [ 应用入口文件 ]
namespace think;
if (version_compare(PHP_VERSION, '7.4.0', '<'))
die('require PHP > 7.4.0 !');
// 检测PHP环境 允许前端跨域请求
header("Access-Control-Allow-Origin:*");
// 响应类型
header('Access-Control-Allow-Methods:GET, POST, PUT, DELETE');
// 响应头设置
header('Access-Control-Allow-Headers:x-requested-with, content-type');
if (!file_exists('./install.lock')) {
header('location: ./install.php');
exit();
}
$query_string = $_SERVER['REQUEST_URI'];
if(!empty($query_string))
{
$file_ext = substr($query_string, -3);
$array = [ 'jpg', 'png', 'css', '.js', 'txt', 'doc', 'ocx', 'peg' ];
if (in_array($file_ext, $array)) {
exit();
}
$query_string_array = explode('/', $query_string);
$app_name = $query_string_array[1] ?? '';
switch ($app_name) {
case 'hwapp':
echo file_get_contents('./hwapp/index.html');exit();
case 'web':
echo file_get_contents('./web/index.html');exit();
case 'mshop':
echo file_get_contents('./mshop/index.html');exit();
case 'cashregister':
echo file_get_contents('./cashregister/index.html');exit();
}
}
require __DIR__ . '/vendor/autoload.php';
// 加载环境变量文件根据APP_ENV动态加载
$app = new App();
// 1. 先加载基础.env文件
if (is_file(__DIR__ . '/.env')) {
$app->env->load(__DIR__ . '/.env');
}
// 2. 根据APP_ENV加载环境特定的.env文件
$appEnv = getenv('APP_ENV') ?: '';
if ($appEnv) {
$envFile = __DIR__ . '/.env.' . $appEnv;
if (is_file($envFile)) {
$app->env->load($envFile);
}
}
// 3. 为了兼容性,如果存在.env.local也加载优先级最高
if (is_file(__DIR__ . '/.env.local')) {
$app->env->load(__DIR__ . '/.env.local');
}
// 执行HTTP应用并响应
$http = $app->http;
$response = $http->run();
$response->send();
$http->end($response);