好的,我搜索了董事会,找不到任何具体的答案。网站和商店不一样。Codeigniter 已用于处理所有事情,所以现在我想使用 Opencart 添加一个商店,而 URI 路由是问题所在。
(其实我不是 CI 的粉丝,但是因为我之前的那个人用过,所以我没有别的选择,只能继续,现在我必须在 CI 上添加一个商店!)
我应该将网站与商店分开并将每个网站放入主机上的单独文件夹中并使用 .htaccess 重写规则来处理与每个 MVC 相关的 URI,还是可以做一些简单的事情?
好的,我搜索了董事会,找不到任何具体的答案。网站和商店不一样。Codeigniter 已用于处理所有事情,所以现在我想使用 Opencart 添加一个商店,而 URI 路由是问题所在。
(其实我不是 CI 的粉丝,但是因为我之前的那个人用过,所以我没有别的选择,只能继续,现在我必须在 CI 上添加一个商店!)
我应该将网站与商店分开并将每个网站放入主机上的单独文件夹中并使用 .htaccess 重写规则来处理与每个 MVC 相关的 URI,还是可以做一些简单的事情?
您应该能够在 CI“系统”文件夹的同一级别创建一个文件夹,并在其中复制所有商店文件。然后,您只需通过 domain.com/shop/ 访问商店
如果您已经拥有从 CI url 中删除 index.php 的默认 .htaccess 文件,我认为您不需要更改任何路由或 .htaccess 规则。我在几个网站上这样做,效果很好。
编辑:这是我的完整 .htaccess 文件,适用于一个可以正常工作的网站
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
redirect 301 /disclaimer/disclaimer.html /disclaimer.html
#Removes access to the system folder by users.
#Additionally this will allow you to create a System.php controller,
#previously this would not have been possible.
#'system' can be replaced if you have renamed your system folder.
RewriteCond %{REQUEST_URI} ^system.*
RewriteRule ^(.*)$ /index.php?/$1 [L]
#Checks to see if the user is attempting to access a valid file,
#such as an image or css document, if this isn't true it sends the
#request to index.php
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
#special rule to allow the 301 redirect from above
RewriteCond %{REQUEST_URI} !disclaimer/disclaimer.html$
RewriteRule ^(.*)$ index.php?/$1 [L]
</IfModule>
<IfModule !mod_rewrite.c>
# If we don't have mod_rewrite installed, all 404's
# can be sent to index.php, and everything works as normal.
# Submitted by: ElliotHaughin
ErrorDocument 404 /index.php
</IfModule>
#####################################################
# CONFIGURE media caching
#
Header unset ETag
FileETag None
<FilesMatch "(?i)^.*\.(ico|flv|jpg|jpeg|png|gif|js|css)$">
Header unset Last-Modified
Header set Expires "Fri, 21 Dec 2012 00:00:00 GMT"
Header set Cache-Control "public, no-transform"
</FilesMatch>
#
#####################################################
<IfModule mod_deflate.c>
<FilesMatch "\.(js|css)$">
SetOutputFilter DEFLATE
</FilesMatch>
</IfModule>