【问题标题】:How to configure .htaccess for using Yii2 with Opencart in subfolder如何配置 .htaccess 以在子文件夹中使用 Yii2 和 Opencart
【发布时间】:2016-08-07 14:38:11
【问题描述】:

我对 Yii2 基本应用程序的正确配置 .htaccess 文件有疑问。

我想将 Yii2 框架与已安装到 /shop 子文件夹的 Opencart 商店一起使用。 根据 Yii2 服务器设置指南,我需要将 /web 目录设置为 DocumentRoot。但随后我的 /shop 目录(位于 Yii2 安装的根目录中)变得无法通过网络访问。

所以我决定打破规则,将我的 Yii-root 设置为 DocumentRoot,并在 Apache 的 mod_rewrite 的帮助下将所有请求重定向到 /web 目录。

请帮我为 Yii-root 文件夹创建有效的 .htaccess 文件(在 Opencart 文件夹中,我把它作为默认的 .htaccess 文件,只需将 RewriteBase 更改为 /shop。它似乎工作正常)

我需要这样的东西:

Lets assume I set DocumentRoot /var/www, then:

http://sitename.com => /var/www/web/index.php
http://sitename.com/any-non-file-request => /var/www/web/index.php
http://sitename.com/favicon.ico => /var/www/web/favicon.ico

http://sitename.com/shop => /var/www/shop

【问题讨论】:

    标签: apache .htaccess mod-rewrite yii2


    【解决方案1】:

    现在工作。 /var/www 中的 .htaccess 文件(Yii2 安装的根目录)

    RewriteEngine on
    
    RewriteBase /
    
    RewriteCond %{REQUEST_URI} !^/web
    RewriteRule ^(.*)$ web/$1 [QSA,L]
    
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^web/(.*)$ web/index.php [L]
    

    【讨论】:

      猜你喜欢
      • 2010-09-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-06-29
      相关资源
      最近更新 更多