Хороший URL с htaccess с конкретными параметрами - PullRequest
0 голосов
/ 06 февраля 2019

Я хочу использовать эту форму URL: https://domain(:port)/lang/x/y/z/other

С помощью этого файла htaccess я не смогу добиться именно того, что хочу.

Если я введу URL https://localhost:port/lang/, Я теряю порт.Если я введу URL https://localhost:port/lang,, я получу URL https://localhost:port/langx/y/z

Пожалуйста, помогите мне!

Options +FollowSymLinks
RewriteEngine On

#LIVE
RewriteBase /

#--------------------------------------
#-- 404 & 500 Redirects
#--------------------------------------
ErrorDocument 404 /404.php
ErrorDocument 500 /500.php

#--------------------------------------
#-- Force HTTPS
#--------------------------------------
RewriteCond %{HTTP_HOST} !=localhost$ [NC]
RewriteCond %{SERVER_PORT} !=8088
RewriteCond %{SERVER_PORT} !=8080
RewriteCond %{HTTPS} !=on
#RewriteRule ^.*$ https://%{SERVER_NAME}%{REQUEST_URI} [R,L]
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]


RewriteRule ^(actions)($|/) - [L]

#--------------------------------------
#-- Add trailing PHP and Params
#--------------------------------------
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^/]+)/([^/]+)/([^/]+)/([^/]+)$ $1.php?param1=$2&param2=$3&param3=$4&param4=$5 [B,QSA,L]

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^/]+)/([^/]+)/([^/]+)$ $1.php?param1=$2&param2=$3&param3=$4 [B,QSA,L]

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^/]+)/([^/]+)$ $1.php?param1=$2&param2=$3 [B,QSA,L]

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
#check for the existance of a PHP file first or else the 404 won't work
RewriteCond %{REQUEST_FILENAME}.php -f 
RewriteRule ^([^/]+)$ $1.php?param1=$2 [B,QSA,L]

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