Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

Видимо у меня что-то не так с SEO-url


Recommended Posts

Делал все вот так, но теперь при переходе на страницы с товарами показывает 404:

) Система -> Настройки -> Сервер -> Использовать "SEO-url" -> Да

И нажать Сохранить.

2) Далее заходим в настройки раздел Каталог -> Товар. Выбираем нужный нам товар и во вкладке Данные вводим в поле Псевдоним то что нам нужно.

3) Убедитесь что у Вас в корневом каталоге есть файл .htaccess и в нём есть запись:

Options +FollowSymlinks

RewriteEngine On

RewriteBase /

RewriteCond %{REQUEST_FILENAME} !-f

RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule ^(.*)?*$ index.php?_route_=$1 [L,QSA]

AllowOwerride All

Надіслати
Поділитися на інших сайтах


Закрались подозрения, что может понадобиться код .htaccess.txt

# Подробнее на https://myopencart.com
Options +FollowSymlinks
# Запретить листинг директорий
Options -Indexes
# Закрыть доступ к файлам шаблонов
<FilesMatch ".(tpl|ini|log|txt)">
Order deny,allow
Deny from all
</FilesMatch>
<Files robots.txt>
Allow from all
</Files>
# Необходимо для ЧПУ.

RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^?]*) index.php?_route_=$1 [L,QSA]
AllowOwerride All
### 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, then 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
Надіслати
Поділитися на інших сайтах


ну в смысле строку изменить и потом переименовать .htaccess.txt в .htaccess - ошибка 500 так же будет вылезать? если да то еще попробуй без слеша последнего сохранить. Т.е. вот так: RewriteBase /docs

Надіслати
Поділитися на інших сайтах


ну в смысле строку изменить и потом переименовать .htaccess.txt в .htaccess - ошибка 500 так же будет вылезать? если да то еще попробуй без слеша последнего сохранить. Т.е. вот так: RewriteBase /docs

Да. я именно так и делал

Надіслати
Поділитися на інших сайтах


Ура! Решил проблему с 500 ошибкой при переименовании .htaccess.txt на .htaccess. Видел такие вопросы в сети без ответа, поэтому дам свой ответ:

Вот так выглядит .htaccess:

# Подробнее на https://myopencart.com
Options +FollowSymlinks
# Запретить листинг директорий
Options -Indexes
# Закрыть доступ к файлам шаблонов
<FilesMatch ".(tpl|ini|log|txt)">
Order deny,allow
Deny from all
</FilesMatch>
<Files robots.txt>
Allow from all
</Files>
# Необходимо для ЧПУ.

RewriteEngine On
RewriteBase /docs/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
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, then 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

судя по логам ошибок - сначала ругался на "AllowOwerride" (Invalid command), потом на строку

'^(.*)?*$'
которую я заменил на
^([^?]*)
Надіслати
Поділитися на інших сайтах


Только теперь ошибка 500 показывается при включении SEO-url. Т.е. главная нормально открывается, и вроде у товаров ссылки нормальные, только по ним ошибка 500

Надіслати
Поділитися на інших сайтах


Ну я так и писал тебе сделать)))

да, точно, еще docs/ добавил :)

Только теперь ошибка 500 показывается при включении SEO-url. Т.е. главная нормально открывается, и вроде у товаров ссылки нормальные, только по ним ошибка 500

Надіслати
Поділитися на інших сайтах


а еще у тебя с ошибкой директива AllowOverride написана была.. еще и поэтому все могло валиться))

да. это странно, что она с ошибкой. все потому, что в FAQ она написанна с ошибкой. вот тут http://opencartforum...ndpost__p__1042

другая проблема. теперь "AllowOverride not allowed here" пишет если ставлю "AllowOverride all" после

RewriteEngine On
RewriteBase /docs/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^?]*) index.php?_route_=$1 [L,QSA]
Змінено користувачем angelzzz
Надіслати
Поділитися на інших сайтах


Тебе для работы seo_url нужен .htaccess как минимум с такими строками:

RewriteEngine On
RewriteBase /docs

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule (.*) index.php?_route_=$1 [L,QSA]
Если не завелось - добавляеш строку:

Options +FollowSymlinks
Остальные директивы добавляеш по отдельности, контролируя какая директива вызывает ошибку 500.

От директив вызывающих ошибку - отказываешся, либо обращаешся в ТП для разъяснений.

Надіслати
Поділитися на інших сайтах

Тебе для работы seo_url нужен .htaccess как минимум с такими строками:

RewriteEngine On
RewriteBase /docs

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule (.*) index.php?_route_=$1 [L,QSA]
Если не завелось - добавляеш строку:

Options +FollowSymlinks
Остальные директивы добавляеш по отдельности, контролируя какая директива вызывает ошибку 500.

От директив вызывающих ошибку - отказываешся, либо обращаешся в ТП для разъяснений.

Оставил только:

RewriteEngine On
RewriteBase /docs
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule (.*) index.php?_route_=$1 [L,QSA]
Пробовал добавлять

Options +FollowSymlinks
В логах пишет:

mod_rewrite: maximum number of internal redirects reached. Assuming configuration error. Use 'RewriteOptions MaxRedirects' to increase the limit if neccessary.

в ТП чего обращаться? хостинга или opencart?

Надіслати
Поділитися на інших сайтах


По ошибке - модрепайт зациклился... но тут нечему зацикливаться...

Попробуй для эксперимента убрать .htaccess который лежит в корне сайта

Обращатся надо в ТП хостинга

Надіслати
Поділитися на інших сайтах

Мой мозг уже очень близок к тому, чтобы взорваться...

И так, серия экспериментов:

1. Заменил

RewriteRule ^([^?]*) index.php?_route_=$1 [L,QSA]
на

RewriteRule ^([^?]*) /index.php?_route_=$1 [L,QSA]

включил

Автоподстановка окончаний SEO-url:Добавляет / в конце УРЛ - ДА

открываются только страницы где в SEO Псевдоним после название не стоит пробел

остальные не открываются и пишут, что mozilla утверждает что цикл не прекратится никогда

2. Заменил

RewriteRule ^([^?]*) index.php?_route_=$1 [L,QSA]
на

RewriteRule ^([^?]*) /index.php?_route_=$1 [L,QSA]

включил

Автоподстановка окончаний SEO-url:Добавляет / в конце УРЛ - ДА

Заменять пробелы на "_" в SEO-url: - ДА

открываются все ссылки, НО пишет, что запрашиваемая страница не обнаружена

в принципе я решил вопрос, который хотел решить:

1.переименовал файл .htaccess.txt на .htaccess

2. работает seo псевдоним, правда показывается сейчас странно domainname.ru/catalog_name/item name (обратите внимание, что только в конце в названии нет нижнего подчеркивания).

правда теперь придется у всех товаров менять seo_псевдоним

Надіслати
Поділитися на інших сайтах


Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз
  • Зараз на сторінці   0 користувачів

    • Ні користувачів, які переглядиють цю сторінку
×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.