Предположим, файл .htaccess.template
такой:
# BEFORE
# --- Start Part1 ---#
# --- End Part1 ---#
# AFTER
В том же каталоге есть скрипт ColdFusion, скажем htaccess.cfm
(имя не имеет значения):
<code><!--- note double pound signs, necessary to escape in CF --->
<cfset start = "## --- Start Part1 ---##">
<cfset end = "## --- End Part1 ---##">
<cfsavecontent variable="replacement"><cfoutput>
I will appear between the start and end comments!
Replace me with what you want to appear in the .htaccess file.
</cfoutput></cfsavecontent>
<cfset template = fileRead(getDirectoryFromPath(getCurrentTemplatePath()) & "/.htaccess.template")>
<cfset startPos = find(start, template)>
<cfset endPos = find(end, template)>
<cfset before = left(template, startPos + len(start) - 1)>
<cfset after = right(template, len(template) - endPos + 1)>
<cfset content = "#before##replacement##after#">
<!--- <cfoutput><pre>#content#
--->
Это создаст файл .htaccess
в том же каталоге. Я думаю, что единственная проблема будет связана с любыми блокировками файловой системы, установленными на .htaccess
, предотвращающими удаление / перезапись, когда я не уверен, что вам нужно сделать в этой ситуации.
В этом примере .htaccess будет:
# BEFORE
# --- Start Part1 ---#
I will appear between the start and end comments!
Replace me with what you want to appear in the .htaccess file.
# --- End Part1 ---#
# AFTER