【问题标题】:How to set frontend&backend yii2 turnkey?如何设置前端&后端yii2交钥匙?
【发布时间】:2018-09-13 06:15:15
【问题描述】:

我是一个新手,期待设置 yii2 并进行实验。 我用 yiiframework 交钥匙在 proxmox 中设置了一个容器。 然后安装了adminlte,现在我正在尝试进行后端和前端工作..但我做不到。 我尝试启用和禁用 prettyUrls,但只是 https://192.168.1.3/frontend/web/index.phphttps://192.168.1.3/backend/web/index.php 给我返回 404 错误“在此服务器上找不到请求的 URL /frontend/web/index.php。”

除了这个:

   'view' => [
            'theme' => [
                'pathMap' => [
                    '@app/views' => '@backend/views'
                ],
            ],
        ],
    'assetManager' => [
        'bundles' => [
            'dmstr\web\AdminLteAsset' => [
                'skin' => 'skin-blue',
                ],
            ],
    ],

这就是 adminlte 集成.. 没有什么可以搞砸的。

我尝试在根目录中设置一个 .htaccess 文件,里面有这个:

RewriteEngine on

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . index.php

以及用于前端和后端的两个不同的 .htaccess 文件......

甚至遵循像这样的不同指南:https://devreadwrite.com/posts/htaccess-for-yii-2-advanced

但是我好像没有这个前后端分离,只有192.168.1.3站点……

非常感谢, 等待一些帮助。

大黄蜂

【问题讨论】:

    标签: php yii2 frontend backend


    【解决方案1】:

    使用高级模板时可以使用前端和后端。要使用您应该使用的高级模板创建项目:

    composer create-project --prefer-dist yiisoft/yii2-app-advanced yii-application
    

    yii-application 是你项目的名称。之后你应该初始化项目,使用:

    /path/to/php-bin/php /path/to/yii-application/init
    

    之后,您应该可以获取后端和前端的 web 文件夹和配置文件,包括 index.php

    只有在这些步骤完成后,您才能更改它们各自的 config/main.php 文件(前端和后端)中的 prettyUrl。

    https://github.com/yiisoft/yii2-app-advanced/blob/master/docs/guide/start-installation.md

    【讨论】:

    • 感谢您的回复,我已经创建了项目,事实上我已经在使用它了。交钥匙系统已经设置了起始层,可以快速开始工作。唯一的就是这个,关于如何到达后端Url。
    【解决方案2】:

    您无法通过您提出的这些 url 访问后端和前端 https://192.168.1.3/frontend/web/index.phphttps://192.168.1.3/backend/web/index.php

    使用这个

    https://192.168.1.3/frontend/web/site/index.phphttps://192.168.1.3/backend/web/site/index.php

    1.首先使用此命令安装yii2后

    composer create-project --prefer-dist yiisoft/yii2-app-advanced yii-application
    

    2.您必须使用 init 命令,以便索引文件可用于访问 url。安装项目后,只需进入项目文件夹并打开终端并输入命令

    ./init
    

    并选择开发选项。在此之后,索引文件将在后端和前端文件夹的 web 文件夹中可用。

    3.使用您想要的任何名称创建一个数据库,并通过输入数据库详细信息来更新 common/config/main-local.php 文件。

    4.转到您的项目文件夹并运行命令

    ./yii migrate or yii migrate
    

    它会在你的数据库名称 users 中创建两个表并进行迁移。 在此之后将 htaccess 文件添加到您的后端和前端的 web 文件夹中

    RewriteEngine on
    # If a directory or a file exists, use it directly
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    # Otherwise forward it to index.php
    RewriteRule . index.php
    

    并在后端和前端的配置文件中启用漂亮的 url 并取消注释 url 管理器代码。

    5.在此之后,您可以通过以下方式访问后端和前端 https://hostname/backend/web/site/index.phphttps://hostname/frontend/web/site/index.php 但在你写这个的问题中 后端/web/index.php 前端/web/index.php 这是错误的。 只需通过此访问前端和后端 https://hostname/backend/web/site/index.phphttps://hostname/frontend/web/site/index.php 你可以走了。

    【讨论】:

    • 好的,我一直跟着你直到第 2 点。其余的已经在交钥匙中完成(老实说,即使第 2 点已经完成,但我只是决定尝试覆盖所有内容)然后我阅读了文档交钥匙,发现有一个WEBMIN,所以登录并发现为了访问后端我应该使用https:192.168.1.3/admin ..现在问题是我覆盖了一些页面,因为使用了adminlte模板并跟着一个向导。非常感谢!洛德克罗奇
    猜你喜欢
    • 2016-04-09
    • 1970-01-01
    • 2016-03-23
    • 1970-01-01
    • 1970-01-01
    • 2019-02-14
    • 2013-02-25
    • 2018-11-14
    • 1970-01-01
    相关资源
    最近更新 更多