.htaccess rewrite: удалить параметр из url-адреса


.htaccess rewrite: удалить параметр из url-адреса

22.10.2020 02:13:00 Просмотров 121 Источник

Я хочу создать поддомен из первого параметра URL, а затем удалить этот параметр.

Желаемый результат:

http://www.example.com/mystore          -> http://www.mystore.example.com

Для этого сначала я создал виртуальный хост для mystore.example.com

Теперь я пытаюсь удалить этот параметр из URL последующим.

Я попробовал ниже изменения в htaccess. Пожалуйста, проверьте.

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_URI} !^/mystore/

виртуальный хост:

<VirtualHost *:80>
    ServerAdmin admin@gmail.com
    ServerName  mystore.example.local
    ServerAlias www.mytore.example.local

    DocumentRoot /var/www/html/Projectname/public/index.php/mystore

    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined

</VirtualHost>

.htaccess: этот файл находится в папке "public/". Этот проект находится в laravel.

<IfModule mod_rewrite.c>
<IfModule mod_negotiation.c>
Options -MultiViews -Indexes +FollowSymLinks
</IfModule>

RewriteEngine On

# Handle Authorization Header
RewriteCond %{HTTP:Authorization} .
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]

# Redirect Trailing Slashes If Not A Folder...
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} (.+)/$
RewriteRule ^ %1 [L,R=301]

# Send Requests To Front Controller...
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]

RewriteCond %{HTTP_HOST} ^(?:www\.)?example\.com$ [NC]
RewriteRule ^mystore(/.*)?$ http://www.mystore.example.com$1 [NC,L,R=301,NE]

</IfModule>
У вопроса есть решение - Посмотреть?

Ответы - .htaccess rewrite: удалить параметр из url-адреса / .htaccess rewrite: Remove parameter from url

anubhava

22.10.2020 02:18:18

Вы можете использовать это правило в корне сайта .откройте файл. htaccess в www.example.com:

RewriteEngine On

RewriteCond %{HTTP_HOST} pragnastore\.sliderstock\.local$ [NC]
RewriteRule ^pragnastore(/.*)?$ http://pragnastore.sliderstock.local$1 [NC,L,R=301,NE]

Обязательно используйте это правило чуть ниже строки RewriteEngine On.

Является ответом!
Pragna

23.10.2020 11:41:56

Используя эту ссылку, я решил ее с помощью изменений маршрутизации Laravel. Поэтому для этого сначала я создал виртуальный хост, а затем внес эти изменения в свою маршрутизацию web.php

Route::group(array('domain' => '{subdomain}.website.com'), function ($subdomain) {
    Route::get('/', 'controller@method');
});
Помочь в развитии проекта:
Закрыть X