Как установить OpenCart из поддиректории после перенаправления от корней до поддиректории
Мне нужна помощь. У меня есть www.mysite.com в корневом каталоге. Я хочу запустить его из подпапки после перенаправления из корневой папки в подпапку. Для перенаправления я добавил RewriteRule ^ $ / abc [R=301, L] в htaccess root. Я хочу, например, если пользователь вводит www.mysite.com в браузере, он должен перенаправить на www.mysite.com/subfolder не требуя от пользователя ввода www.mysite.com/subfolder в браузере. Я использую OC 3.0.2.0 . Я скопировал все файлы и папки из корневой папки в подпапку и внес изменения в конфигурацию.на PHP, админ/конфиг.php и htaccess подпапки . Когда я вхожу www.mysite.com или mysite.com он перенаправляет на mysite.com/subfolder, но выдает ошибку "эта страница не работает". Когда я удаляю RewriteRule ^ $ / abc [R=301, L] из htaccess корня и введите www.mysite.com/subfolder , затем страница запускается. Но когда я вхожу mysite.com/subfolder, затем он перенаправляет обратно на mysite.com и показывая страницу mysite.com. нужно ли мне перенаправлять с non-www на www или с www на non-www. Как я могу добиться этих перенаправлений. Пожалуйста, сообщите мне, под какой строкой мне нужно поместить код для перенаправления в htaccess root. На данный момент, я ввел его в конце htaccess root или после перезаписи базы. Обратите внимание, что я хочу сохранить свой сайт как в корневой, так и в подпапке . Пожалуйста, направьте меня, как я могу запустить opencart из подкаталога после перенаправления из корневого каталога в подкаталог, сохранив его как в корневом, так и в подкаталоге. Я был бы очень благодарен за вашу большую помощь. Спасибо
Ниже приведен мой корневой htaccess.
RewriteOptions inherit
# 1.To use URL Alias you need to be running apache with mod_rewrite enabled.
# 2. In your opencart directory rename htaccess.txt to .htaccess.
# For any support issues please visit: http://www.opencart.com
Options +FollowSymlinks
# Prevent Directoy listing
Options -Indexes
# Prevent Direct Access to files
<FilesMatch "(?i)((\.tpl|.twig|\.ini|\.log|(?<!robots)\.txt))">
Require all denied
## For apache 2.2 and older, replace "Require all denied" with these two
lines :
# Order deny,allow
# Deny from all
</FilesMatch>
# SEO URL Settings
RewriteEngine On
# If your opencart installation does not run on the main web folder make sure you folder it does run in ie. / becomes /shop/
RewriteBase /
RewriteRule ^sitemap.xml$ index.php?route=extension/feed/google_sitemap [L]
RewriteRule ^googlebase.xml$ index.php?route=extension/feed/google_base [L]
RewriteRule ^system/storage/(.*) index.php?route=error/not_found [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !.*\.(ico|gif|jpg|jpeg|png|js|css)
RewriteRule ^([^?]*) index.php?_route_=$1 [L,QSA]
### Additional Settings that may need to be enabled for some servers
### Uncomment the commands by removing the # sign in front of it.
### If you get an "Internal Server Error 500" after enabling any of the following settings, restore the # as this means your host doesn't allow that.
# 1. If your cart only allows you to add one item at a time, it is possible register_globals is on. This may work to disable it:
# php_flag register_globals off
# 2. If your cart has magic quotes enabled, This may work to disable it:
# php_flag magic_quotes_gpc Off
# 3. Set max upload file size. Most hosts will limit this and not allow it to be overridden but you can try
# php_value upload_max_filesize 999M
# 4. set max post size. uncomment this line if you have a lot of product options or are getting errors where forms are not saving all fields
# php_value post_max_size 999M
# 5. set max time script can take. uncomment this line if you have a lot of product options or are getting errors where forms are not saving all fields
# php_value max_execution_time 200
# 6. set max time for input to be recieved. Uncomment this line if you have a lot of product options or are getting errors where forms are not saving all fields
# php_value max_input_time 200
# 7. disable open_basedir limitations
# php_admin_value open_basedir none
RewriteEngine on
RewriteCond %{HTTP_HOST} ^example.com [NC]
RewriteRule ^(.*)$ http://www.example.com$1 [L,R=301,NC]
# php -- BEGIN cPanel-generated handler, do not edit
# Set the “ea-php56” package as the default “PHP” programming language.
<IfModule mime_module>
AddHandler application/x-httpd-ea-php56 .php .php5 .phtml
</IfModule>
# php -- END cPanel-generated handler, do not edit
И моя подпапка htaccess выглядит следующим образом
# 1.To use URL Alias you need to be running apache with mod_rewrite enabled.
# 2. In your opencart directory rename htaccess.txt to .htaccess.
# For any support issues please visit: http://www.opencart.com
Options +FollowSymlinks
# Prevent Directoy listing
Options -Indexes
# Prevent Direct Access to files
<FilesMatch "(?i)((\.tpl|.twig|\.ini|\.log|(?<!robots)\.txt))">
Require all denied
## For apache 2.2 and older, replace "Require all denied" with these two lines :
# Order deny,allow
# Deny from all
</FilesMatch>
# SEO URL Settings
RewriteEngine On
# If your opencart installation does not run on the main web folder make sure you folder it does run in ie. / becomes /shop/
RewriteBase /Subfolder/
RewriteRule ^sitemap.xml$ index.php?route=extension/feed/google_sitemap [L]
RewriteRule ^googlebase.xml$ index.php?route=extension/feed/google_base [L]
RewriteRule ^system/storage/(.*) index.php?route=error/not_found [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !.*\.(ico|gif|jpg|jpeg|png|js|css)
RewriteRule ^([^?]*) index.php?_route_=$1 [L,QSA]
### Additional Settings that may need to be enabled for some servers
### Uncomment the commands by removing the # sign in front of it.
### If you get an "Internal Server Error 500" after enabling any of the following settings, restore the # as this means your host doesn't allow that.
# 1. If your cart only allows you to add one item at a time, it is possible register_globals is on. This may work to disable it:
# php_flag register_globals off
# 2. If your cart has magic quotes enabled, This may work to disable it:
# php_flag magic_quotes_gpc Off
# 3. Set max upload file size. Most hosts will limit this and not allow it to be overridden but you can try
# php_value upload_max_filesize 999M
# 4. set max post size. uncomment this line if you have a lot of product options or are getting errors where forms are not saving all fields
# php_value post_max_size 999M
# 5. set max time script can take. uncomment this line if you have a lot of product options or are getting errors where forms are not saving all fields
# php_value max_execution_time 200
# 6. set max time for input to be recieved. Uncomment this line if you have a lot of product options or are getting errors where forms are not saving all fields
# php_value max_input_time 200
# 7. disable open_basedir limitations
# php_admin_value open_basedir none







Ответы - Как установить OpenCart из поддиректории после перенаправления от корней до поддиректории / How to run opencart from subdirectory after redirect from root to subdirectory

18.09.2019 10:48:54
Ниже .скрипт htaccess должен быть размещен в корне папки public_html
. Это приведет к перенаправлению в public_html\subfolder
\и далее .htaccess там должен обрабатывать остальное - я попытался сохранить другие правила в вашем примере htaccess, игнорируя содержимое OpenCart htaccess.
Options +FollowSymlinks
# Prevent Directoy listing
Options -Indexes
# Prevent Direct Access to files
<FilesMatch "(?i)((\.tpl|.twig|\.ini|\.log|(?<!robots)\.txt))">
Require all denied
## For apache 2.2 and older, replace "Require all denied" with these two
lines :
# Order deny,allow
# Deny from all
</FilesMatch>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_URI} !^/subfolder
RewriteRule (.*) subfolder/$1 [R=301,L]
# php -- BEGIN cPanel-generated handler, do not edit
# Set the “ea-php56” package as the default “PHP” programming language.
<IfModule mime_module>
AddHandler application/x-httpd-ea-php56 .php .php5 .phtml
</IfModule>
# php -- END cPanel-generated handler, do not edit
Само собой разумеется, что вам нужно отредактировать "example.com" и "подпапка" к вашим собственным значениям
