Jump to content

Убираем слэш(и) в конце url и избавляемся от дублей


Recommended Posts

Разве такие страницы есть изначально в Simpla?

 

Не понял смысла Вашего вопроса.

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

 

Если решать это посредством PHP такой проблемы не будет?

 

Зависит от того, как решать...

Link to post
Share on other sites

Не понял смысла Вашего вопроса.

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

 

Можно создавать страницы средствами CMS через админку а можно и как-то по другому. Но не в этом дело. На самом деле я изначально не понял почему это реврайт не сработает для статичной страницы //site.ru/simpla_and_templates/

 

Зависит от того, как решать...

 

Решать так как здесь предлагают в ветке.

$serv_uri = $_SERVER["REQUEST_URI"];
if($serv_uri && substr($serv_uri, 0,7) !='/simpla'){
	$uri = rtrim($serv_uri, "/");
	if($serv_uri != $uri){
		header("Location: ".$uri);
		exit();
	}
}
Link to post
Share on other sites
  • 4 months later...

подскажите пожалуйста, а как убрать слэши в середине адреса? типа: сайт/products////////goods/potatoes

 

смотрите в админке у вас goods если это бренд то у этого бренда в url стоит адрес ///////goods  

Link to post
Share on other sites

смотрите в админке у вас goods если это бренд то у этого бренда в url стоит адрес ///////goods  

 

А некоторые говорят, экстрасенсов на форуме нет...

 

Вопрос-то совсем в другом. И на демо работают, например, адреса

http://demo.simplacms.ru/products///////pylesos-dyson-dc23-pink

http://demo.simplacms.ru////catalog///////pylesosy/////dyson

 

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

Сделать редирект на правильный адрес, можно, например, через регулярные выражения в .htaccess.

Link to post
Share on other sites

А некоторые говорят, экстрасенсов на форуме нет...

 

Вопрос-то совсем в другом. И на демо работают, например, адреса

http://demo.simplacms.ru/products///////pylesos-dyson-dc23-pink

http://demo.simplacms.ru////catalog///////pylesosy/////dyson

 

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

Сделать редирект на правильный адрес, можно, например, через регулярные выражения в .htaccess.

 

 

 

прикольно можно сколько угодно слешей ставить в адресе

 

http://demo.simplacms.ru/products//////////////////////////////////////////////////////////////////////////////////////////////////////////////pylesos-dyson-dc23-pink

 

up

 

http://demo.simplacms.ru/products//////////////////////////////////////////////////////////////////////////////////////////////////////////////pylesos-dyson-dc23-pink
Link to post
Share on other sites
  • 6 years later...

а как наоборот добавить слеш в конце site.com/simpla?

Думаю многие сталкивались заходом в админку https://site.com/simpla где нужно ввести почту админа, приходилось ставить "/" в адрес чтобы нормально зайти
 

RewriteCond %{REQUEST_URI} !\?
RewriteCond %{REQUEST_URI} !\&
RewriteCond %{REQUEST_URI} !\=
RewriteCond %{REQUEST_URI} !\.
RewriteCond %{REQUEST_URI} !\/$
RewriteRule ^(.*[^\/])$ /$1/ [R=301,L]

не помогло

Link to post
Share on other sites
4 часа назад, get31 сказал:

а как наоборот добавить слеш в конце site.com/simpla?

Думаю многие сталкивались заходом в админку https://site.com/simpla где нужно ввести почту админа, приходилось ставить "/" в адрес чтобы нормально зайти
 




RewriteCond %{REQUEST_URI} !\?
RewriteCond %{REQUEST_URI} !\&
RewriteCond %{REQUEST_URI} !\=
RewriteCond %{REQUEST_URI} !\.
RewriteCond %{REQUEST_URI} !\/$
RewriteRule ^(.*[^\/])$ /$1/ [R=301,L]

не помогло

Чтобы правильно ответить, нужно понять какие правила у вас уже указаны. Правило которое вы указали выше можно сократить в 2 строчки. 
Приложите свой файл .htaccess

 

Link to post
Share on other sites
AddDefaultCharset UTF-8
ErrorDocument 404 /404
ErrorDocument 401 /password.php
RewriteEngine on

# Админка теперь по адресу /simpla
RewriteRule  ^admin/?$  simpla [L]


RewriteCond %{HTTP_HOST} ^www\.(.*) [NC]
RewriteRule ^(.*)$ https://%1/$1 [R=301,L]

# Редирект на адреса без слеша
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} ^(.+)/$
RewriteRule ^(.+)/$ /$1 [R=301,L]


RewriteRule ^hits/?$    index.php?module=ProductsView&type=hits [L,QSA]
RewriteRule ^sales/?$    index.php?module=ProductsView&type=sales [L,QSA]

# Каталог товаров
RewriteRule ^/([^/]+)/?$  index.php?module=ProductsView&category=$1 [L,QSA]
RewriteRule ^/([^/]+)/([^/]+)?$  index.php?module=ProductsView&category=$2&brand=$1 [L,QSA]

RewriteRule ^items/([^/]+)/?$  index.php?module=ProductView&product_url=$1 [L,QSA]
RewriteRule ^items/?$  index.php?module=ProductsView [L,QSA]

RewriteRule ^brands/([^/]+)/?$  index.php?module=ProductsView&brand=$1 [L,QSA]
RewriteRule ^brands/([^/]+)/page_([^/]+)/?$  index.php?module=ProductsView&brand=$1&page=$2 [L,QSA]
RewriteRule ^brands/?$    index.php?module=BrandsView [L,QSA]

# Каталог брендов
RewriteRule ^brand/([^/]+)/?$  index.php?module=BrandView&url=$1 [L,QSA]
RewriteRule ^brand/?$  index.php?module=BrandView [L,QSA]

# wishlist
RewriteRule ^wishlist/([^/]+)/?$  index.php?module=WishlistView&url=$1 [L,QSA]
RewriteRule ^wishlist/?$  index.php?module=WishlistView [L,QSA]

# Поиск товаров
RewriteRule ^search/([^/]+)/?$  index.php?module=ProductsView&keyword=$1 [L,QSA]
RewriteRule ^search/?$  index.php?module=ProductsView [L,QSA]

# XML
RewriteRule ^rss?$ rss.php [L,QSA]

# Блог
RewriteRule ^blog/([^/]+)/?$  index.php?module=BlogView&url=$1 [L,QSA]
RewriteRule ^blog/?$  index.php?module=BlogView [L,QSA]

# Статьи
RewriteRule ^article/([^/]+)/?$  index.php?module=ArticlesView&article_url=$1 [L,QSA]
RewriteRule ^articles/([^/]+)/?$  index.php?module=ArticlesView&category=$1 [L,QSA]
RewriteRule ^articles/?$  index.php?module=ArticlesView [L,QSA]

# Rss подключаем Яндекс Турбо
RewriteRule ^rss?$  index.php?module=RssView  [L,QSA]
RewriteRule ^rss-items?$  index.php?module=RssProductsView  [L,QSA]

# Корзина и заказы
RewriteRule ^cart/?$  index.php?module=CartView   [L,QSA]
RewriteRule ^cart/([^/]+)/?$  index.php?module=CartView&add_variant=$1  [L,QSA]
RewriteRule ^cart/remove/([^/]+)/?$  index.php?module=CartView&delete_variant=$1  [L,QSA]
RewriteRule ^order/([^/]+)/?$  index.php?module=OrderView&url=$1  [L,QSA]
RewriteRule ^order/?$  index.php?module=OrderView  [L,QSA]

# Для пользователей
RewriteRule ^ulr/?$  index.php?module=UlrView  [L,QSA]
RewriteRule ^user/login/?$  index.php?module=LoginView  [L,QSA]
RewriteRule ^user/register/?$  index.php?module=RegisterView  [L,QSA]
RewriteRule ^user/logout/?$  index.php?module=LoginView&action=logout  [L,QSA]
RewriteRule ^user/password_remind/?$  index.php?module=LoginView&action=password_remind  [L,QSA]
RewriteRule ^user/password_remind/([0-9a-z]+)/?$  index.php?module=LoginView&action=password_remind&code=$1  [L,QSA]
RewriteRule ^user/?$  index.php?module=UserView  [L,QSA]
RewriteRule ^users/?$  index.php?module=UsersView  [L,QSA]

# Google sitemap
RewriteRule ^sitemap.xml?$  sitemap.php  [L,QSA]
RewriteRule ^sitemap_image.xml?$  sitemap_image.php  [L,QSA]

# Sitemap
RewriteRule ^sitemap/?$    index.php?module=SitemapView  [L,QSA]

# XML
RewriteRule ^yandex.xml?$  yandex.php  [L,QSA]

# feedback
RewriteRule ^contact/?$  index.php?module=FeedbackView  [L,QSA]

# reviews
RewriteRule ^reviews/?$  index.php?module=ReviewsView  [L,QSA]

#downloads
RewriteRule ^order/([^/]+)/([^/]+)/?$  index.php?module=OrderView&url=$1&file=$2  [L,QSA]


# Статические страницы
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
#RewriteRule ^([^/]*)/?$  index.php?module=PageView&page_url=$1 [L,QSA]
RewriteRule ^([^/]+)/([^/]+)/?$  index.php?module=ProductsView&page_url=$1&brand=$2 [L,QSA]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^/]*)/?$  index.php?page_url=$1 [L,QSA]
RewriteRule ^/?$  index.php?module=MainView&page_url= [L,QSA]


# Ресайз картинок на лету
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^files/products/(.+) resize/resize.php?file=$1&token=%{QUERY_STRING}
#RewriteCond %{THE_REQUEST} ^GET\ (.*)files/products/(.*)\?([A-z0-9]*)
#RewriteRule ^files/products/(.+) resize/resize.php?file=%2&token=%3 [L,NE]

 

Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...