.htaccess сокращение ссылок

Тема в разделе "Mod Rewrite / htaccess / ЧПУ", создана пользователем Waytrel, 21 июн 2014.

  1. Waytrel

    Waytrel Создатель

    Регистр.:
    19 ноя 2012
    Сообщения:
    38
    Симпатии:
    12
    Есть плагин WordPress WHMCS WP Integration Plugin, при переходе в биллинг с этим плагином ссылка не очень красивая
    Код:
    http://domain.ru/solutions/control-panel-account?whmcsportal%5Bpage%5D=whmcs%3A%2F%2Fdomain.ru%2Fbilling%2Findex.php
    можно ли как-то сократить ссылку до
    Код:
    http://domain.ru/solutions/index.php
    или еще как-то? может есть какой-то плагин для wordpress чтобы сократить ссылки?
     
  2. UJy

    UJy

    Регистр.:
    23 авг 2011
    Сообщения:
    354
    Симпатии:
    127
    Тут вопрос в том, будет ли этот адрес отлавливаться апачем если правило написать не через %2F, а через /
    Если словит, то правило примерно такое:
    Код:
    RewriteEngine On
    RewriteBase /
    RewriteCond %{REQUEST_URI} solutions/control-panel-account
    RewriteCond %{QUERY_STRING} whmcsportal.*
    RewriteRule .* /solutions/index.php? [R=301,L]
    
    RewriteCond %{REQUEST_URI} /solutions/index\.php
    RewriteRule /solutions/index\.php /solutions/control-panel-account?whmcsportal[page]=whmcs://domain.ru/billing/index.php [QSA,L]
    
    А вот если для апача %2F и / окажутся разными вещами - тогда печаль...
     
  3. Waytrel

    Waytrel Создатель

    Регистр.:
    19 ноя 2012
    Сообщения:
    38
    Симпатии:
    12
    %2F и / оказались разными вещами... не работает...
     
  4. oss061100

    oss061100

    Регистр.:
    14 дек 2012
    Сообщения:
    244
    Симпатии:
    304
    ребят подскожите как сделать из
    https://xxxxxx.ru/index.php/apps/files/ вот так
    https://xxxxxxx.ru/files/
    вот мой аштеаксес

    Код:
    <IfModule mod_fcgid.c>
    <IfModule mod_setenvif.c>
    <IfModule mod_headers.c>
    SetEnvIfNoCase ^Authorization$ "(.+)" XAUTHORIZATION=$1
    RequestHeader set XAuthorization %{XAUTHORIZATION}e env=XAUTHORIZATION
    </IfModule>
    </IfModule>
    </IfModule>
    <IfModule mod_php5.c>
    php_value upload_max_filesize 1024M
    php_value post_max_size 1024M
    php_value memory_limit 1024M
    php_value mbstring.func_overload 0
    <IfModule env_module>
    SetEnv htaccessWorking true
    </IfModule>
    </IfModule>
    <IfModule mod_rewrite.c>
    RewriteEngine on
    RewriteRule .* - [env=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
    RewriteRule ^\.well-known/host-meta /public.php?service=host-meta [QSA,L]
    RewriteRule ^\.well-known/host-meta\.json /public.php?service=host-meta-json [QSA,L]
    RewriteRule ^\.well-known/carddav /remote.php/carddav/ [R]
    RewriteRule ^\.well-known/caldav /remote.php/caldav/ [R]
    RewriteRule ^apps/calendar/caldav\.php remote.php/caldav/ [QSA,L]
    RewriteRule ^apps/contacts/carddav\.php remote.php/carddav/ [QSA,L]
    RewriteRule ^remote/(.*) remote.php [QSA,L]
    </IfModule>
    <IfModule mod_mime.c>
    AddType image/svg+xml svg svgz
    AddEncoding gzip svgz
    </IfModule>
    <IfModule dir_module>
    DirectoryIndex index.php index.html
    </IfModule>
    AddDefaultCharset utf-8
    Options -Indexes
    <IfModule pagespeed_module>
    ModPagespeed Off
    </IfModule>
     
    Последнее редактирование модератором: 21 ноя 2014
    ivan-netsoft и oss0611 нравится это.
  5. lag

    lag

    Регистр.:
    13 окт 2014
    Сообщения:
    215
    Симпатии:
    280
    Добавить после RewriteRule ^remote/(.*) remote.php [QSA,L]
    Код:
    RewriteRule ^(files/.*) index.php/apps/$1 [L]
    
    RewriteCond %{THE_REQUEST} ^[A-Z]{3,7}\ /index.php/apps(/files/\S*)
    RewriteRule ^ %1 [R=301,L]