• Битрикс заглавные буквы в sitemap.xml?

    JastaFly
    @JastaFly Автор вопроса
    Александр,
    но хотие что бы вывел в ниженем

    Ну потому что это очередной сайд данной говноCMSки. Она не как не ограничивает символьные коды по регистру и регистра не учитывает и ровно в том-же духе продолжает работать и во вешний мир, выдавая ссылки на одни и те-же страницы, но с разным регистром букв, порождая поисковые дубли
    проблема то на вашей стороне

    Опят-же не на моей, Битрикс сам добавляет постфикс из случайных заглавных букв и чисел, некоторым товарам (ссылка на товар из примера, разумеется выдуманная, ради увеселения публики)
    так измените там и все

    Ну походу это единственный выход сделать миграцию которая всё поправит. Или-же опять ковырять ядро этого высера, в очередной раз исправляя косяки недалёких разрабов сего чуда
    Написано
  • Битрикс заглавные буквы в sitemap.xml?

    JastaFly
    @JastaFly Автор вопроса
    Александр, да уже проверил. Заглавные буквы в нём есть и из-за этого весь сыр-бор
    Написано
  • Битрикс заглавные буквы в sitemap.xml?

    JastaFly
    @JastaFly Автор вопроса
    makol,

    Это приоритетная задача

    Сомневаюсь что разрабы Битрикса в курсе что это вообще такое "Приоритетная задача" :D
    Написано
  • Битрикс заглавные буквы в sitemap.xml?

    JastaFly
    @JastaFly Автор вопроса
    makol,

    Тогда поддержка битрикса

    Да такое себе. Всякий раз когда пытаюсь к ни обратиться, то начинается унылый дроч с попыткой доказать что это не их вина
    Написано
  • Битрикс заглавные буквы в sitemap.xml?

    JastaFly
    @JastaFly Автор вопроса
    makol,

    Или как вариант проблема в (нехитром шаблоне)

    Проблема в кодах товаров, они могут содержать заглавные буквы и на их основе формируется URL и прямо с этими самыми заглавными буквами идёт в сайтмап
    Написано
  • Редирект с GET запроса на ЧПУ?

    JastaFly
    @JastaFly Автор вопроса
    dodo512,

    Это говорит о том что ответ сгенерирован на стороне PHP

    Да точно. Редирект был в коде, легаси сюрприз от других разработчиков, которые сделали так что если бренд не находится, то происходит редирект на обычный каталог
    Написано
  • Редирект с GET запроса на ЧПУ?

    JastaFly
    @JastaFly Автор вопроса
    dodo512
    нашёл несколько урлов на которых возникает ошибка "Сайт enex.market выполнил переадресацию слишком много раз":
    https://my-site.ru/catalog/raskhodnye_materialy/golovki_tortsevye/aksessuary_i_adaptery_dlya_tortsevykh_golovok/perekhodniki_dlya_tortsevykh_golovok/?brand=honito
    https://my-site.ru/catalog/?brand=ooo-liteynyy-zavod-samzas-

    Можете пожалуйста подсказать в чём может быть причина?
    Написано
  • Битрикс заглавные буквы в sitemap.xml?

    JastaFly
    @JastaFly Автор вопроса
    makol

    Если да то забить и не париться)))))

    К сожалению из-за дублей в поисковой выдаче "не париться", такой себе вариант
    Написано
  • Редирект с GET запроса на ЧПУ?

    JastaFly
    @JastaFly Автор вопроса
    dodo512,

    Может где-то выше есть ещё .htaccess и RewriteOptions

    Да вроде нет. Попробовал поискать по проекту RewriteOptions, IDE ничего не нашла

    Ещё вариант попробовать убрать ? и добавить флаг QSD.

    А вот это вот сработало! Сейчас правило выглядит так:
    RewriteCond %{QUERY_STRING} ^(brand)=([^&]+)$
    RewriteRule ^(en/)?catalog/(.+/)?$ /$0%1/%2/ [R=301,L,QSD]

    Спасибо, за помощь)
    Написано
  • Редирект с GET запроса на ЧПУ?

    JastaFly
    @JastaFly Автор вопроса
    dodo512,

    Тогда остается подробнее смотреть содержимое
    /home/bitrix/ext_www/my-site.ru/.htaccess

    Вот он:
    Options -Indexes 
    ErrorDocument 404 /404.php
    
    <IfModule mod_php5.c>
    	php_flag allow_call_time_pass_reference 1
    	php_flag session.use_trans_sid off
    </IfModule>
    
    <IfModule mod_rewrite.c>
        RewriteCond %{HTTP_HOST} ^www.my-site.ru
        RewriteCond %{REQUEST_URI} !1c_exchange.php
        RewriteCond %{REQUEST_URI} !1c_import_xml.php
        RewriteRule (.*) https://my-site.ru/$1 [R=301,L]
    	# Редиректы для адресов без слеша в конце, на адреса со слешем
    	RewriteCond %{REQUEST_FILENAME} !-f
    	RewriteCond %{REQUEST_FILENAME} !-l
    	RewriteCond %{REQUEST_FILENAME} !-d
    	RewriteCond %{REQUEST_URI} ^(.*/[^/\.]+)$
    	RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1/ [R=301,L]
    	# Редирект со страниц с **/index.(html|php), на страницы без index.(html|php)
    	RewriteRule ^index\.(html|php)$ https://%{HTTP_HOST} [R=301,L]
    	RewriteRule ^(.*)/index\.(html|php)$ https://%{HTTP_HOST}/$1/ [R=301,L]
    	RewriteRule ^manufacturers/(.*)/(.*)\.(.*)(.*)+$ https://%{HTTP_HOST}/manufacturers/$1/ [R=301,L]
    
    	Options +FollowSymLinks
    	RewriteEngine On
        # Редиреты со старых брендовых страниц каталога а GET-запросами, на новые с ЧПУ
    	RewriteCond %{QUERY_STRING} ^(brand)=([^&]+)$
        RewriteRule ^(en/)?catalog/(.+/)?$ /$0%1/%2/? [R=301,L]
    
        RewriteCond %{QUERY_STRING} ^(trade-company)=([^&]+)$
        RewriteRule ^(en/)?catalog/(.+/)?$ /$0%1/%2/? [R=301,L]
    
    	RewriteCond %{REQUEST_FILENAME} !-f
    	RewriteCond %{REQUEST_FILENAME} !-l
    	RewriteCond %{REQUEST_FILENAME} !-d
    	RewriteCond %{REQUEST_FILENAME} !/bitrix/urlrewrite.php$
    	RewriteRule ^(.*)$ /bitrix/urlrewrite.php [L]
    	RewriteRule .* - [E=REMOTE_USER:%{HTTP:Authorization}]
    
        RewriteCond %{THE_REQUEST} /(.*)index.php.*$
        RewriteCond %{THE_REQUEST} !bitrix/admin/
        RewriteRule (.*) https://%{HTTP_HOST}/%1 [R=301,L]
    	Redirect 301 /favorites/ /order-template/
    </IfModule>
    
    <IfModule mod_dir.c>
    	DirectoryIndex index.php index.html
    </IfModule>
    
    <IfModule mod_expires.c>
    	ExpiresActive on
    	ExpiresByType image/jpeg "access plus 3 day"
    	ExpiresByType image/gif "access plus 3 day"
    </IfModule>
    <Files phpunit>
        Order Deny,Allow
        Deny from all
    </Files>
    <Files README.md>
        Order Deny,Allow
        Deny from all
    </Files>
    <Files Makefile>
        Order Deny,Allow
        Deny from all
    </Files>
    <Files composer.json>
        Order Deny,Allow
        Deny from all
    </Files>

    на всех серверах файл идентичен
    Написано
  • Редирект с GET запроса на ЧПУ?

    JastaFly
    @JastaFly Автор вопроса
    dodo512,
    а вот ещё конфиг с локалки:
    Listen 127.0.0.1:8888
    <VirtualHost 127.0.0.1:8888>
    	ServerAdmin webmaster@localhost
    	DocumentRoot /home/bitrix/www
    
    	<Directory />
    		Options FollowSymLinks
    		AllowOverride None
    	</Directory>
    
    	<DirectoryMatch .*\.svn/.*>
    		 Require all denied
    	</DirectoryMatch>
    
    	<DirectoryMatch .*\.git/.*>
    		 Require all denied
    	</DirectoryMatch>
    
    	<DirectoryMatch .*\.hg/.*>
    		 Require all denied
    	</DirectoryMatch>
    
    	<Directory /home/bitrix/www/>
    		Options FollowSymLinks MultiViews
    		AllowOverride All
    		DirectoryIndex index.php index.html index.htm
    		php_admin_value session.save_path /tmp/php_sessions/www
    		php_admin_value upload_tmp_dir /tmp/php_upload/www
            Require all granted
    	</Directory>
    
    	<Directory /home/bitrix/www/bitrix/cache>
    		AllowOverride none
            Require all denied
    	</Directory>
    
    	<Directory /home/bitrix/www/bitrix/managed_cache>
    		AllowOverride none
            Require all denied
    	</Directory>
    
    	<Directory /home/bitrix/www/bitrix/local_cache>
    		AllowOverride none
            Require all denied
    	</Directory>
    
    	<Directory /home/bitrix/www/bitrix/stack_cache>
    		AllowOverride none
            Require all denied
    	</Directory>
    
    	<Directory /home/bitrix/www/upload>
    		AllowOverride none
    		AddType text/plain php,php3,php4,php5,php6,phtml,pl,asp,aspx,cgi,dll,exe,ico,shtm,shtml,fcg,fcgi,fpl,asmx,pht
    		php_value engine off
    	</Directory>
    
    	<Directory /home/bitrix/www/upload/support/not_image>
    		AllowOverride none
            Require all denied
    	</Directory>
    
    	<Directory /home/bitrix/www/bitrix/images>
    		AllowOverride none
    		AddType text/plain php,php3,php4,php5,php6,phtml,pl,asp,aspx,cgi,dll,exe,ico,shtm,shtml,fcg,fcgi,fpl,asmx,pht
    		php_value engine off
    	</Directory>
    
    	<Directory /home/bitrix/www/bitrix/tmp>
    		AllowOverride none
    		AddType text/plain php,php3,php4,php5,php6,phtml,pl,asp,aspx,cgi,dll,exe,ico,shtm,shtml,fcg,fcgi,fpl,asmx,pht
    		php_value engine off
    	</Directory>
    
    	ErrorLog logs/error_log
    	# Possible values include: debug, info, notice, warn, error, crit, alert, emerg.
    	LogLevel warn
    
    	CustomLog logs/access_log combined
    
    	<IfModule mod_rewrite.c>
    		#Nginx should have "proxy_set_header HTTPS YES;" in location
    		RewriteEngine On
    		RewriteCond %{HTTP:HTTPS} =YES
    		RewriteRule .* - [E=HTTPS:on,L]
    	</IfModule>
    </VirtualHost>
    Написано
  • Редирект с GET запроса на ЧПУ?

    JastaFly
    @JastaFly Автор вопроса
    dodo512,

    Нужно глянуть на тестовом сервере что в

    Вот нашёл на тесте:
    # Ansible managed
    # site: my-site
    <VirtualHost 127.0.0.1:8887>
        ServerName  my-site
    	ServerAlias www.my-site
        	ServerAdmin webmaster@localhost
    	DocumentRoot  /home/bitrix/ext_www/my-site.ru
    
    	ErrorLog logs/my-site_error_log
    	LogLevel warn
    	CustomLog logs/my-site_access_log combined
    
    	<IfModule mod_rewrite.c>
    		#Nginx should have "proxy_set_header HTTPS YES;" in location
    		RewriteEngine On
    		RewriteCond %{HTTP:HTTPS} =YES
    		RewriteRule .* - [E=HTTPS:on,L]
    	</IfModule>
    
         
    
    	<Directory />
    		Options FollowSymLinks
    		AllowOverride None
    	</Directory>
    
    	<DirectoryMatch .*\.svn/.*>
            Require all denied
    	</DirectoryMatch>
    
    	<DirectoryMatch .*\.git/.*>
    		 Require all denied
    	</DirectoryMatch>
    
    	<DirectoryMatch .*\.hg/.*>
    		 Require all denied
    	</DirectoryMatch>
    
    	<Directory /home/bitrix/ext_www/my-site.ru>
    		Options FollowSymLinks MultiViews
    		AllowOverride All
    		DirectoryIndex index.php index.html index.htm
    
            Require all granted
            
            #php_admin_value session.save_path /tmp/php_sessions/ext_www/my-site
            php_admin_value upload_tmp_dir    /tmp/php_upload/ext_www/my-site
    	</Directory>
    
    	<Directory /home/bitrix/ext_www/my-site.ru/bitrix/cache>
    		AllowOverride none
            Require all denied
    	</Directory>
    
    	<Directory /home/bitrix/ext_www/my-site.ru/bitrix/managed_cache>
    		AllowOverride none
            Require all denied
    	</Directory>
    
    	<Directory /home/bitrix/ext_www/my-site.ru/bitrix/local_cache>
    		AllowOverride none
            Require all denied
    	</Directory>
    
    	<Directory /home/bitrix/ext_www/my-site.ru/bitrix/stack_cache>
    		AllowOverride none
            Require all denied
    	</Directory>
    
    	<Directory /home/bitrix/ext_www/my-site.ru/upload>
    		AllowOverride none
    		AddType text/plain php,php3,php4,php5,php6,phtml,pl,asp,aspx,cgi,dll,exe,ico,shtm,shtml,fcg,fcgi,fpl,asmx,pht
    		php_value engine off
    	</Directory>
    
    	<Directory /home/bitrix/ext_www/my-site.ru/upload/support/not_image>
    		AllowOverride none
            Require all denied
    	</Directory>
    
    	<Directory /home/bitrix/ext_www/my-site.ru/bitrix/images>
    		AllowOverride none
    		AddType text/plain php,php3,php4,php5,php6,phtml,pl,asp,aspx,cgi,dll,exe,ico,shtm,shtml,fcg,fcgi,fpl,asmx,pht
    		php_value engine off
    	</Directory>
    
    	<Directory /home/bitrix/ext_www/my-site.ru/bitrix/tmp>
    		AllowOverride none
    		AddType text/plain php,php3,php4,php5,php6,phtml,pl,asp,aspx,cgi,dll,exe,ico,shtm,shtml,fcg,fcgi,fpl,asmx,pht
    		php_value engine off
    	</Directory>
    
    </VirtualHost>
    Написано
  • Редирект с GET запроса на ЧПУ?

    JastaFly
    @JastaFly Автор вопроса
    dodo512,

    в заголовках ответов Server: nginx, а не Server: Apache

    Ну да. Просто странно почему на тесте Nginx возвращает редиректнутый URL, а на локалке нет?!
    Тем не менее я нашёл порты на которых весит апач. 8887 на тесте:
    HTTP/1.1 301 Moved Permanently
    Date: Wed, 08 May 2024 12:59:55 GMT
    Server: Apache
    Location: http://127.0.0.1:8887/catalog/elektroinstrument/brand/bahco/%3f
    Connection: close
    Content-Type: text/html; charset=iso-8859-1

    и 8888 на локалке:
    HTTP/1.1 301 Moved Permanently
    Date: Thu, 02 May 2024 11:30:58 GMT
    Server: Apache
    Location: http://127.0.0.1:8888/catalog/elektroinstrument/brand/bahco/
    Connection: close
    Content-Type: text/html; charset=iso-8859-1
    Написано
  • Редирект с GET запроса на ЧПУ?

    JastaFly
    @JastaFly Автор вопроса
    dodo512,

    Посмотреть на каком порту слушает Apache

    По дефолту на 80-ом
    Сделала запрос на тесте:
    curl -I 'http://127.0.0.1:80/en/catalog/bdsm-kostumi/maski-s-klapom/?brand=microsoft'

    Получил ответ:
    HTTP/1.1 301 Moved Permanently
    Server: nginx
    Date: Wed, 08 May 2024 12:38:28 GMT
    Content-Type: text/html; charset=iso-8859-1
    Connection: keep-alive
    Location: http://127.0.0.1/en/catalog/bdsm-kostumi/maski-s-klapom/brand/microsoft/%3f
    X-Content-Type-Options: nosniff
    X-Frame-Options: SAMEORIGIN

    Повторил тот-же запрос на локалке:
    HTTP/1.1 301 Moved Permanently
    Server: nginx
    Date: Thu, 02 May 2024 11:07:40 GMT
    Content-Type: text/html
    Content-Length: 162
    Connection: keep-alive
    Location: https://127.0.0.1/en/catalog/bdsm-kostumi/maski-s-klapom/?brand=microsoft
    X-Content-Type-Options: nosniff
    X-Frame-Options: SAMEORIGIN

    выходит какая-то странная фигня, на локалке в отличии от теста локэйшен не поменялся, хотя в заголовке стоит код ответа 301. Хотя при использовании браузера редирект срабатывает и адрес меняется. Что за магия?!
    Написано
  • Редирект с GET запроса на ЧПУ?

    JastaFly
    @JastaFly Автор вопроса
    dodo512,

    Используется один Apache или связка Nginx + Apache

    Связка, Apache для работы с PHP, Nginx для статики

    какой версии

    Версии апача на тесте:
    Server version: Apache/2.4.6 (CentOS)
    Server built:   Apr  5 2023 17:18:30

    и на локалке:
    Server version: Apache/2.4.6 (CentOS)
    Server built:   May 30 2023 14:01:11

    совпадают. А вот Nginx отличается на тесте:
    nginx version: nginx/1.20.2
    на локалке:
    nginx version: nginx/1.24.0
    Написано
  • Редирект с GET запроса на ЧПУ?

    JastaFly
    @JastaFly Автор вопроса
    dodo512,

    .htaccess на тестовом сервере?

    Всё тоже самое что и на локальном

    Может там лишний /

    Нет, правило на тестовом выглядит точно так-же:
    RewriteCond %{QUERY_STRING} ^(brand)=([^&]+)$
    RewriteRule ^(en/)?catalog/(.+/)?$ /$0%1/%2/? [R=301,L]
    Написано
  • Редирект с GET запроса на ЧПУ?

    JastaFly
    @JastaFly Автор вопроса
    dodo512 теперь нарисовалась новая проблема. Залил свои правки на тестовый сервер и редирект там работает, но ведёт на такие адреса:
    https://my-site.ru/en/catalog/bdsm-kostumi/maski-s-klapom/brand/microsoft/?/

    то есть в конце почему-то появляется знак вопрос. При чём на локалке у меня всё работает как надо, никаких тебе знаков вопроса. Пробовал сбрасывать кэш на тестовом сайте, режим инкогнито, всё без полезно на тестовом серсере знак вопроса в конце есть, на локалке нет. Подскажите в чём тут может быть дело?
    Написано
  • Редирект с GET запроса на ЧПУ?

    JastaFly
    @JastaFly Автор вопроса
    dodo512, спасибо сработало)
    Так-же заметил ещё заметил что данный редирект не будет работать для корневых страниц каталога:
    https://my-site.ru/catalog/?brand=microsoft
    Поправил его ещё и под этот кейс:
    RewriteCond %{QUERY_STRING} ^(brand)=([^&]+)$
    RewriteRule ^(en/)?catalog/(.+/)?$ /$0%1/%2/? [R=301,L]
    Написано
  • Редирект с GET запроса на ЧПУ?

    JastaFly
    @JastaFly Автор вопроса
    dodo512, появились новые условия для редиректа. Дело в том что сайт биязычный и русская версия каталога находится по этому адресу:
    https://my-site.ru/catalog/
    а соответствующая ему английская по адресу:
    https://my-site.ru/en/catalog/
    Можете пожалуйста подсказать как модифицировать данное правило:
    RewriteCond %{QUERY_STRING} ^(brand)=([^&]+)$
    RewriteRule ^catalog/.+/$ /$0%1/%2/? [R=301,L]

    чтобы редирект с русской версии сайта:
    https://my-site.ru/catalog/bdsm-kostumi/maski-s-klapom/?brand=microsoft

    вел на русскую версию ЧПУ:
    https://my-site.ru/catalog/bdsm-kostumi/maski-s-klapom/brand/microsoft/

    а редирект с английской версии сайта:
    https://my-site.ru/en/catalog/bdsm-kostumi/maski-s-klapom/?brand=microsoft

    соответственно вёл на английскую:
    https://my-site.ru/en/catalog/bdsm-kostumi/maski-s-klapom/brand/microsoft/

    или может быть есть другие варианты как решить эту задачу?
    Написано
  • Битрикс ошибка Mysql connect error [localhost]: (2002) No such file or directory (400)?

    JastaFly
    @JastaFly Автор вопроса
    UNiT LAB,
    Значит конкретно у Вас проблема не в порте или порт другой. Данная ошибка говорит о том что Битрикс никак не может подрубиться к БД и это может случиться по разным причинам: может как у меня порт указан неверно, может имя БД указано неверно, может быть вообще БД не существует, короче причин может быть масса ищите свою. Для начала попробуйте у просто подрубиться к базе через консоль, чтобы убедиться что все данные в конфиге указаны верно. Далее пробуйте узнать адрес и порт по которым до неё можно достучаться
    Написано