Thinkphp5设置不同端口绑定不同模块实现IP+端口访问

经验分享  2020-06-01 15:10   7631 thinkphp5 端口

开发环境:Apache + php + mysql  thinkphp版本5.1

1、添加Apache配置端口监听

    打开Apache的config文件夹中的httpd.conf,找到Listen添加监听端口如下:

  1. Listen 8081

2、配置vhost

    找到Apache目录下的httpd-vhosts.conf文件(有的是vhost.conf文件),添加如下代码:

  1. <VirtualHost *:8081>
        ServerName 127.0.0.1
        ServerAlias 
        DocumentRoot "/www/thinkphp5/public"
        DirectoryIndex index.php
        <Directory "/www/thinkphp5/public">
           Options FollowSymLinks
           Require all granted
        </Directory>
        ErrorLog "logs/www-error.log"
        CustomLog "logs/www-access.log" common
    </VirtualHost>

3.thinkphp5添加端口对应的模块 

    添加端口对应模块可以在index.php文件中设置(在route.php中设置要修改TP的底层,所以我们就在index.php中设置),添加如下代码:

  1. switch($_SERVER['SERVER_PORT']){
        case '8081':
            $bindModule = 'api';
            break;
        default:
    	$bindModule = '';
    	break;
    }
    if ($bindModule == '') {
    	Container::get('app')->run()->send();
    } else {
    	Container::get('app')->bind($bindModule)->run()->send();
    }

这样就可以用IP+端口号访问项目绑定的对应模块了 ps: 127.0.0.1:8081

* 阿里云ECS和腾讯云CVM等需要配置相应端口的安全策略,请注意配置。

注:转载请注明出处为http://www.sandbean.com/article/126.html。

沙豆网 站长

追求卓越,奋斗不息!

167
文章
8441
点赞

更多文章