Как я могу изменить языковой параметр URL с помощью Htaccess

Было много ответов на memoizing. Стандартная библиотека Python 3 теперь имеет lru_cache, который является последним использованным кэшем . Таким образом, вы можете:

from functools import lru_cache

@lru_cache()
def f(x):
    # function body here

Таким образом, ваша функция будет вызываться только один раз. Вы также можете указать размер lru_cache, по умолчанию это 128. Проблема с декораторами memoize, показанная выше, заключается в том, что размер списков может значительно увеличиться.

0
задан Viktor 16 January 2019 в 15:06
поделиться

1 ответ

Я бы сказал, что это то, что вы ищете:

RewriteEngine on
RewriteCond %{REQUEST_URI} !-f
RewriteCond %{REQUEST_URI} !-d
RewriteRule ^/?news/(en|de|fr|es)/?$ /news?lang=$1 [END]

Если это правило приводит к «внутренней ошибке сервера» (http status 500), то есть вероятность, что вы используете очень старая версия http-сервера apache. В этом случае либо обновите свой сервер, либо попробуйте использовать более старый флаг [L] вместо флага [END]. Он может работать так же, но это зависит от остальной части установки. Вы найдете явный намек на флаг [END], который в этом случае не поддерживается, в файле журнала ошибок http-серверов.

Это правило также будет работать в конфигурации хоста http-серверов или в файле динамической конфигурации (файл стиля ".htaccess"). Если вам действительно нужно использовать такой динамический файл, то позаботьтесь о том, чтобы в вашей конфигурации хоста была включена его интерпретация, а указанное выше правило помещалось в такой файл в папке DOCUMENT_ROOT хоста http.

И общее замечание: вы всегда должны предпочитать размещать такие правила в конфигурации хоста http-серверов вместо использования файлов динамической конфигурации (".htaccess"). Эти динамические конфигурационные файлы добавляют сложность, часто являются причиной неожиданного поведения, их трудно отладить, и они действительно замедляют работу http-сервера. Они предоставляются только в качестве последнего варианта для ситуаций, когда у вас нет доступа к реальной конфигурации хоста http-серверов (читай: действительно дешевые поставщики услуг) или для приложений, настаивающих на написании своих собственных правил (что является очевидным кошмаром безопасности).

0
ответ дан arkascha 16 January 2019 в 15:06
поделиться
Другие вопросы по тегам:

Похожие вопросы: