Перейти к содержанию

Рекомендуемые сообщения

Подскажите, какой реврайт нужно составить, что бы удалить точку из подобных ссылок?

http://mysite.com.ua/234-name.-tovar/

Мой htaccess имеет такой вид на данный момент

# Prevent Directoy listing
Options -Indexes

# Prevent Direct Access to files
<FilesMatch "(?i)((\.tpl|\.ini|\.log|(?<!robots)\.txt))">
 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 ^(.*)\.html$ /$1/ [L,R=301]
RewriteRule ^sitemap.xml$ index.php?route=feed/google_sitemap [L]
RewriteRule ^googlebase.xml$ index.php?route=feed/google_base [L]
RewriteRule ^system/download/(.*) 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]

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Что такое удалить?
Ві изменили ЧПУ без точки  в базе?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
RewriteCond  %{REQUEST_URI} !\.html

RewriteRule (.*)\.(.*) /$1$2 [R=301,L]

приблизительно так

  • +1 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
1 минуту назад, chukcha сказал:

Что такое удалить?

Думал 301 реврайт сделать удалив точку. С предыдущего магазина остался мусор в ссылках.

4 минуты назад, chukcha сказал:

Ві изменили ЧПУ без точки  в базе?

Нет, ничего не менял в базе 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Ну так в базе также нужно иметь новое соответствие.

 

Иначе, а куда бежать? Где искать?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
5 минут назад, chukcha сказал:

приблизительно так

у меня уже есть редирект с .html на слеш в конце. Уточню если не правильно понят. после name, в примере, стоит точка

http://mysite.com.ua/234-name.-tovar/

вот эти точки мне и надо убрать. 

Этот реврайт 

12 минут назад, chukcha сказал:

RewriteCond %{REQUEST_URI} !\.html 

RewriteRule (.*)\.(.*) /$1$2 [R=301,L]

 

уберёт эти точки? 

1. После какой строки нужно вставить его в htaccess? 

2. какой sql запрос нужно отправить, что бы удалить эти точки?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
1 минуту назад, AlexBr сказал:

у меня уже есть редирект с .html на слеш в конце.

В данном случае html - это условие поиска, то есть, не трогать точки перед html.

  • +1 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
12 минут назад, AlexBr сказал:

1. После какой строки нужно вставить его в htaccess? 

 

12 минут назад, AlexBr сказал:

2. какой sql запрос нужно отправить, что бы удалить эти точки?

Ключи от квартиры?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
1 минуту назад, Dotrox сказал:

В данном случае html - это условие поиска, то есть, не трогать точки перед html.

т.е. вставить сразу после?

RewriteBase /

?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Только что, chukcha сказал:

 

Ключи от квартиры?

Я понял. Цена на составление запроса?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
1 минуту назад, AlexBr сказал:

Я понял. Цена на составление запроса?

Так кто ж вам цену назовет?
Например 499р.
Ну, и конечно я могу четко прописать, что я буду делать, и почему такая цена,

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

@chukcha напишите в личку почему такая цена и в чём сложность.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Зачем личка? Почему личка?

1. Потому что я это умею.

2. Потому что это время (получить доступы, уточнитьТЗ, проанализировать ситуацию, сделать бекап

И это не 15 минут, а превращается в полноценный час.
Ну и, как всегда бывает (почти).. а скажите почему так..., или а можно ли так?

@AlexBr Это вам надо или мне?

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
2 минуты назад, chukcha сказал:

 

Зачем личка? Почему личка?

 

Воспринял ваши слова, что хотите через личку. Да и этот раздел форума для ответов на вопросы, а не для диалогов о деньгах, раз вопрос пошёл о них.

7 минут назад, chukcha сказал:

1. Потому что я это умею.

логично)

8 минут назад, chukcha сказал:

2. Потому что это время (получить доступы, уточнитьТЗ, проанализировать ситуацию, сделать бекап

Вам не достаточно будет увидеть пример проблемных товаров в магазине и составить запрос для удаления точек? 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
12 минут назад, chukcha сказал:

Это вам надо или мне?

ну деньги то вам?)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

 

1 минуту назад, AlexBr сказал:

Вам не достаточно будет увидеть пример проблемных товаров 

Нет, недостаточно, одна? две точки? только товар, только категория?
А может другой, более адекватный метод?
 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
1 минуту назад, AlexBr сказал:

ну деньги то вам?)

Деньги - да
Но все остальное - вам

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
43 минуты назад, AlexBr сказал:

т.е. вставить сразу после?


RewriteBase /

?

Да.

 

30 минут назад, AlexBr сказал:

почему такая цена и в чём сложность

Вообще, такая цена - это как раз без сложностей, потому что ещё дешевле - это уже бесплатно :)

А chukcha мастер в SQL, лучше него всё равно никто не сделает (да и дешевле согласятся разве что школьники, которые вам базу завалят :) ).

Изменено пользователем Dotrox

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

@Dotrox не перехвали :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
3 минуты назад, Dotrox сказал:

Да.

Спасибо

11 минут назад, chukcha сказал:

Нет, недостаточно, одна? две точки? только товар, только категория?

Только страница с товаром как в примере выше. Вероятность двух точек очень мала, но возможны и две. Пока найдены проблемные товары только с одной точкой в адресе.

@chukcha отвечу позже по работе. 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти

  • Похожий контент

    • От Symon81
      Здравствуйте уважаемые форумчане!
      Столкнулся с проблемой, переход с http:// на https://
      Тоесть при https://мой_домен.ру работает, а при https://www.мой_домен.ру выдает ошибку 500
      Так же появилась проблема с ЧПУ и SEO PRO - включаешь ЧПУ и больше нет страниц после главной, отключаешь все работает, но страницы с id и ииндексами
      уже не первый форум читаю, переделывал .htaccess много раз, но все тщетно:
      в домене стоят записи
      @ A XXXXXX
      www A XXXXXX
      В апаче выставил AllowOverride - чтобы читался .htaccess
      Может кто в курсе как и что поправить, напишите мне пожалуйста
      Вот сам файл .htaccess
      AllowOverride All Options +FollowSymlinks #Options +SymLinksIfOwnerMatch # Prevent Directoy listing Options -Indexes # Prevent Direct Access to files <FilesMatch "(?i)((\.tpl|\.ini|\.log|(?<!robots)\.txt))">  Require all denied </FilesMatch> # SEO URL Settings RewriteEngine on RewriteBase / RewriteCond %{HTTP:PORT} !^443$ RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R] RewriteCond %{HTTP_HOST} ^www.fixmed\.ru$ [NC] RewriteRule ^(.*)$ https://fixmed.ru/$1 [R=301,L] RewriteRule ^sitemap.xml$ index.php?route=extension/feed/google_sitemap [L] RewriteRule ^googlebase.xml$ index.php?route=extension/feed/google_base [L] RewriteRule ^system/download/(.*) 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] ExpiresActive On ExpiresDefault "access plus 1 hour" AddOutputFilterByType DEFLATE text/html text/plain text/xml application/xml application/xhtml+xml text/css text/javascript application/javascript application/x-javascript  
    • От AndySparrow
      Добрый день.
      Делаем мультимагазин. Создали поддомен и появилась проблема: все ссылки с поддомена ведут на основной домен.
      Таким образом, при нажатии на любой товар на поддомене загружается этот товар на основном домене.
      Подскажите, пожалуйста, что делать?
    • От Gusev
      Всем доброго воскресного дня
       
      Решил прогнать сайт через NetPeak Spider на наличие пробелов в работе сайта, битых ссылок и тд. В ответ он выдает критическую ошибку редиректа с http на https, по https ответ NULL.
      Сайт доступен, при прогоне на ответ сервера в вебмастере отвечает что все гут, с Джет Кешем время 260 сек. Не могу понять в чем проблема. Возможно неверно настроен .htaccess? Прошу опытных коллег помочь, ибо в php и настройках серверов не силен.
       
      Ниже привожу текст .htaccess
       
      ServerSignature Off
      # 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|\.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 /
      RewriteCond %{THE_REQUEST} //
      RewriteRule .* /$0 [R=301,L]
      RewriteCond %{SERVER_PORT} !^443$
      RewriteRule .* https://%{SERVER_NAME}%{REQUEST_URI} [R=301,L]
      RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]
      RewriteRule ^(.*)$ https://%1/$1 [R=301,L]
      RewriteRule ^sitemap.xml$ index.php?route=extension/feed/google_sitemap [L]
      RewriteRule ^googlebase.xml$ index.php?route=extension/feed/google_base [L]
      RewriteRule ^system/download/(.*) 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 ^page/([^/\.]+)/?$ page=$1 [L]
      RewriteRule ^([^?]*) index.php?_route_=$1 [L,QSA]
      RewriteCond %{REQUEST_URI} ^(.*[^/])//+(.*)$
      RewriteRule . %1 [R=301,L]

      ### 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
      php_value memory_limit 250M
      # 7. disable open_basedir limitations
      # php_admin_value open_basedir none
      ### Display PHP errors
      ### Uncomment the commands by removing the # sign in front of it.
      # php_flag display_startup_errors on
      # php_flag display_errors on
      # php_flag html_errors on
      # php_flag track_errors on
      # php_value error_reporting "E_ALL"
      ### Сжать ответ сервера для перечисленных MIME типов
      #<ifModule mod_deflate.c>
      #  <IfModule mod_filter.c>
      #      AddOutputFilterByType DEFLATE text/plain text/html
      #      AddOutputFilterByType DEFLATE text/css
      #      AddOutputFilterByType DEFLATE text/javascript application/javascript application/x-javascript
      #      AddOutputFilterByType DEFLATE text/xml application/xml application/xhtml+xml application/rss+xml
      #      AddOutputFilterByType DEFLATE application/json
      #      AddOutputFilterByType DEFLATE application/vnd.ms-fontobject application/x-font-ttf font/opentype image/svg+xml image/x-icon
      #  </ifModule>
      #</ifModule>

      <IfModule mod_deflate.c>
      AddOutputFilterByType DEFLATE text/plain
      AddOutputFilterByType DEFLATE text/html
      AddOutputFilterByType DEFLATE text/xml
      AddOutputFilterByType DEFLATE text/css
      AddOutputFilterByType DEFLATE application/xml
      AddOutputFilterByType DEFLATE application/xhtml+xml
      AddOutputFilterByType DEFLATE application/rss+xml
      AddOutputFilterByType DEFLATE application/javascript
      AddOutputFilterByType DEFLATE application/x-javascript
      </IfModule>
      ### Способ #1
      ### Подсказать браузеру схему кеширования через заголовки в ответе сервера
      <ifModule mod_headers.c>
          # 43200 - день, 604800 - неделя, 2592000 - месяц
          <FilesMatch "\.(html|js|css)$">
          Header set Cache-Control "max-age=2592000"
              #Header unset Last-Modified
          </FilesMatch>
          <Files *.txt>
          Header add Cache-Control "max-age=43200"
          </Files>
          <FilesMatch "\.(flv|swf|ico|gif|jpg|jpeg|png)$">
          Header set Cache-Control "max-age=2592000"
          </FilesMatch>
          <FilesMatch "\.(pl|php|cgi|spl|scgi|fcgi)$">
          # отключить кэширование
          Header unset Cache-Control
          </FilesMatch>
      </IfModule>
      ### Способ #2
      ### Подсказать браузеру схему кеширования через заголовки в ответе сервера
      <IfModule mod_expires.c>
          # Enable expires
          ExpiresActive On
          # Default a cache expiration
          ExpiresDefault "access plus 10 month"
          # Images
          ExpiresByType image/gif                 "access plus 1 month"
          ExpiresByType image/png                 "access plus 1 month"
          ExpiresByType image/jpg                 "access plus 1 month"
          ExpiresByType image/jpeg                "access plus 1 month"
          # CSS, JavaScript
          ExpiresByType text/css                  "access plus 1 year"
          ExpiresByType application/javascript    "access plus 1 year"
          ExpiresByType text/javascript           "access plus 1 year"
      </IfModule>

      ### Удалить заголовок ETag (иначе есть проблемы с кешированием при включенном сжатии)
      <IfModule mod_headers.c>
          Header unset ETag
      </IfModule>
      FileETag None
       
       
    • От le75
      Ребят, кто сталкивался или подскажет при включении кэшированя на стороне браузера в .htaccess, не корректо работает админ панель: менеджер изображений, товары, добавление товаров и т.д. Тоесть отображается всё закешированное ранее, и только после очистки кеша браузера видны изменения(но это до первых новых правок). На стороне пользователя работает корректно и без очистки кэша. Тема дефолтная и кэширование стандартное если что:
      <ifModule mod_deflate.c> AddOutputFilterByType DEFLATE text/html text/plain text/xml application/xml application/xhtml+xml text/css text/javascript application/javascript application/x-javascript </ifModule> <ifModule mod_expires.c> ExpiresActive On ExpiresDefault "access plus 1 days" ExpiresByType image/x-icon "access plus 1 month" ExpiresByType image/jpeg "access plus 4 weeks" ExpiresByType image/png "access plus 30 days" ExpiresByType image/gif "access plus 43829 minutes" ExpiresByType application/x-shockwave-flash "access plus 2592000 seconds" ExpiresByType text/css "access plus 604800 seconds" ExpiresByType text/javascript "access plus 604800 seconds" ExpiresByType application/javascript "access plus 604800 seconds" ExpiresByType application/x-javascript "access plus 604800 seconds" ExpiresByType text/html "access plus 43200 seconds" ExpiresByType application/xhtml+xml "access plus 600 seconds" ExpiresByType application/x-font-ttf "access plus 1 month" ExpiresByType font/opentype "access plus 1 month" ExpiresByType application/x-font-woff "access plus 1 month" ExpiresByType image/svg+xml "access plus 1 month" ExpiresByType application/vnd.ms-fontobject "access plus 1 month" </ifModule>
    • От ale120188
      Подскажите как правильно настроить редирект .htaccess. У меня ошибка Ссылка на веб-страницу с 4xx статус-кодом: домен.com.ua/\/. В конце два \/ и идет ошибка 404. Подскажите пожалуйста.
       
       RewriteEngine On
      RewriteCond %{HTTPS_HOST} ^www.домен.com.ua/$ [NC]
      RewriteRule ^(.*)$ https://домен.com.ua/$1 [R=301,L]
      RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]
      RewriteRule ^ https://%1%{REQUEST_URI} [R=301,L]
      RewriteCond %{HTTP:X-Forwarded-Proto} =http [OR]
      RewriteCond %{HTTP:X-Forwarded-Proto} =""
      RewriteCond %{HTTP:X-HTTPS} !1 [OR]
      RewriteCond %{HTTPS} !=on
      RewriteCond %{REQUEST_URI} !robots\.txt
      RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
      RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /index\ HTTPS/
      RewriteRule ^index\.html$ / [R=301,L]
      RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /index\.php\ HTTPS/
      RewriteRule ^index\.php$ / [R=301,L]
      RewriteCond %{QUERY_STRING} ^route=common/home$
      RewriteCond %{REQUEST_METHOD} !^POST$
      RewriteRule ^index\.php$ https://%{HTTPS_HOST}? [R=301,L]
      RewriteCond %{REQUEST_URI} !\?
      RewriteCond %{REQUEST_URI} !\&amp;amp;amp;amp;
      RewriteCond %{REQUEST_URI} !\=
      RewriteCond %{REQUEST_URI} !\.
      RewriteCond %{REQUEST_URI} !\/$
      RewriteRule ^(.*[^\/])$ /$1/ [R=301,L]
  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×

Важная информация

На нашем сайте используются файлы cookie и происходит обработка некоторых персональных данных пользователей, чтобы улучшить пользовательский интерфейс. Чтобы узнать для чего и какие персональные данные мы обрабатываем перейдите по ссылке. Если Вы нажмете «Я даю согласие», это означает, что Вы понимаете и принимаете все условия, указанные в этом Уведомлении о Конфиденциальности.