Не работает Семантический URL (ЧПУ)

Тема в разделе "Общие вопросы", создана пользователем Алексей91, 10 июн 2025.

  1. Алексей91

    Алексей91 Новичок

    Сообщения:
    2
    Симпатии:
    0
    Всем здравствуйте! Столкнулся с проблемой, решения которой не нахожу. Поставил OpenCart 3.0.3.7. Значит, что сделал:

    1. Использовать семантические адреса: да (включил);
    2. Файл ".htaccess" имеет такое имя (переименовал без .txt);
    Внутри него такая конфигурация:
    Код:
    RewriteEngine On
    RewriteCond %{HTTPS} off [OR]
    RewriteCond %{HTTP_HOST} ^www\.(.*)$
    RewriteRule ^(.*)$ http://%1/$1 [L,R=301]
    
    # 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

    3. Запросы + ключевые слова прописал в дизайн -> Семантический URL. У домашней страницы пустое значение (ключевое слово), как и должно быть.

    В итоге что получается:

    Когда хожу по карточкам или категориям, то имеется такой хвост (пример): index.php?route=product/category&path=20.
    Когда перехожу (нажимая на лого) на главную, то имеется хвост: index.php?route=common/home

    Во вкладке Семантический URL (категории или карточки товара), если туда вписать при заполнении адрес страницы, то это работает. Поэтому категории и карточки, в принципе, можно и вручную прописать, не проблема. Но я насколько помню по предыдущему сайту, это делалось автоматически (но, может, ошибаюсь) при включении ЧПУ.

    И вот еще что вижу: в дизайн -> Семантический URL я прописал ключевые слова для запросов. Однако когда перехожу, условно говоря, в Специальные предложения по ссылке мойсайт.ру/specials, то все отлично открывается. Однако в навигационной цепочке, если нажать на ссылку (текст) "Специальные предложения", то страница откроется уже по ссылке: мойсайт.ру/index.php?route=product/special

    Вопрос такой: что не так с домашней страницей и почему появляется хвост в конце ссылки? Как решить эту проблему?

    Я заранее премного благодарен всем тем, кто поучаствует в моем вопросе и поможет с решением.
     
  2. devimirochnik

    devimirochnik Продвинутый пользователь

    Сообщения:
    882
    Симпатии:
    124
    Вы бы сайт прислали и скрины заполненных seo для примера категорий и товаров
     
  3. Ravilr

    Ravilr Специалист

    Сообщения:
    4.102
    Симпатии:
    1.407
    Не везде автоматически, а то что у Вас обычный opencart то поведение вполне обычное.. Все что вы хотите есть например в русской сборке, но не в голом opencart