Привет, у меня странная проблема. На нашем сервере разработки страницы coldfusion выполняются дважды. Это происходит каждый раз. Чтобы выяснить, что вызывает эту проблему, я отправляю себе электронное письмо с деталями запроса следующим образом:
<Cfmail from="*" to="*" type="html">
<cfdump var=#GetHttpRequestData()#>
#gettickcount()#
#createUUID()#
</cfmail>
При вызове страницы, содержащей .cfm, я получаю следующий ответ:
content [empty string]
headers struct
TOMCATCGIHTTPURL000000006A6B0000 /test.cfm
accept */*
content-length 0
host *
user-agent curl/7.40.0
method GET
protocol HTTP/1.1
1590760731452
C7487929-D679-B029-6E236DEE7E19B8EB
и второе письмо, содержащее
content [empty string]
headers struct
X-Original-URL /test.cfm
accept */*
content-length 0
host *
user-agent curl/7.40.0
method GET
protocol HTTP/1.1
1590760731425
C7487814-FA6F-4699-182C2E7382A06A47
Теперь действительно странная часть. Когда я вызываю index.cfm без имени файла, например /, страница выполняется только один раз. Например, вызов страницы, расположенной в /test/index.cfm, как / test /, возвращается как один ответ:
content [empty string]
headers struct
X-Original-URL /test/
accept */*
content-length 0
host *
user-agent curl/7.40.0
method GET
protocol HTTP/1.1
1590762636945
C86B3A74-025F-6DBA-EA187DFEF7751F03
Подробная информация о среде: Windows 2016 server, IIS 10, Coldfusion 2016
Любые мысли о том, что вызывает эту проблему.
ОБНОВЛЕНИЕ
Я использую правила перезаписи. Я протестировал отключение правил перезаписи (как было предложено Мигелем-Ф), и тогда страница выполняется только один раз. При добавлении простого правила перезаписи, подобного этому, страница выполняется дважды:
<rule name="Test rule" stopProcessing="true">
<match url="^(.*)$" />
<action type="Rewrite" url="/{R:1}" appendQueryString="true" />
</rule>
Такое поведение наблюдается только на нашем сервере разработки. На нашем производственном сервере нет ни одной из этих проблем, и он также работает на windows 2016 IIS 10 и coldfusion 2016.
Версия Coldfusion для сервера разработки: 2016.0.13.316217 (Рабочий сервер работает на той же версии и не имеет проблем )