{"id":71,"date":"2023-06-09T22:24:04","date_gmt":"2023-06-10T02:24:04","guid":{"rendered":"https:\/\/www.caribmendez.net\/?p=71"},"modified":"2024-03-30T18:34:47","modified_gmt":"2024-03-30T22:34:47","slug":"installing-coldfusion-2023-on-apple-silicon-m1-m2-with-apache","status":"publish","type":"post","link":"https:\/\/www.caribmendez.net\/?p=71","title":{"rendered":"Installing ColdFusion 2023 on Apple Silicon (M1 \/ M2) with Apache"},"content":{"rendered":"\n<p>Adobe has recently released its newest version of ColdFusion. One of its notable new features is compatibility with Apple silicon. However the installer by default does not run under current versions of macOS (Intel or Apple silicon), and once installed the default install does not natively run under Apple silicon. With just a few fixes, ColdFusion will run natively under Apple Silicon as well as with integration with Apache. This has been tested under both macOS 13 Ventura, and the beta of macOS 14 Sonoma on M1, M2, and M3.<\/p>\n\n\n\n<p>First a few pre-requisites:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Rosetta (The default JDK bundled with the Coldfusion installer is X86 based.)<\/li>\n\n\n\n<li>ColdFusion GUI installer<\/li>\n\n\n\n<li>Apache  (optional; if you  want to run it behind Apache)<\/li>\n\n\n\n<li>JDK > 17 (I opted for Amazon Coretto <a href=\"https:\/\/docs.aws.amazon.com\/corretto\/latest\/corretto-17-ug\/downloads-list.html\" data-type=\"URL\" data-id=\"https:\/\/docs.aws.amazon.com\/corretto\/latest\/corretto-17-ug\/downloads-list.html\" target=\"_blank\" rel=\"noreferrer noopener\">here<\/a>)<\/li>\n<\/ul>\n\n\n\n<p>To start you will need the GUI installer for Coldfusion 2023 from Adobe located at <a rel=\"noreferrer noopener\" href=\"https:\/\/helpx.adobe.com\/coldfusion\/kb\/coldfusion-downloads.html#download0\" target=\"_blank\">https:\/\/helpx.adobe.com\/coldfusion\/kb\/coldfusion-downloads.html#download0<\/a> There are several different install methods, this guide is utilizing the GUI installer (ending in .dmg)<\/p>\n\n\n\n<p>Once you have downloaded the installer and mounted the DMG you&#8217;ll need to do the following:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Mount the dmg file<\/li>\n\n\n\n<li>Drag the installer to your desktop (you cannot run it from the DMG due to the included JDK not being signed, so Gatekeeper will not allow it to run)<\/li>\n\n\n\n<li>Open up the terminal and type in <strong><code>xattr -r -d com.apple.quarantine<\/code> <\/strong>after <em>quarantine<\/em> make sure there is a space and then drag the installer into the terminal window to auto copy the path to the installer. This command will remove the quarantine extended attribute from all of the files within the installer which will cause Gatekeeper to not block the running of the embedded JDK.<\/li>\n\n\n\n<li>Right click on the installer and select Open\u2026The installer should now open<\/li>\n\n\n\n<li>Click through the installer steps and configure them for your needs. Couple of things to note if you are intending to use this in a production environment you will require a serial number, and it is HIGHLY recommended that you not enable RDS, Remote Start, and any additional services you do not need. I also recommend that you run the lockdown script afterwords for production environments (also found on Adobe&#8217;s ColdFusion download pages). \n<ul class=\"wp-block-list\">\n<li>Note for this install you will want to select <em>Server Configuration <\/em>under the Installer Configuration window in order to use Apache as your web front end<br><img loading=\"lazy\" decoding=\"async\" width=\"500\" height=\"376\" class=\"wp-image-72\" style=\"width: 500px;\" src=\"https:\/\/www.caribmendez.net\/wordpress\/wp-content\/uploads\/2023\/06\/Screenshot-2023-06-09-at-6.47.30\u202fPM.png\" alt=\"Server Configuration under Installer Configuration\" srcset=\"https:\/\/www.caribmendez.net\/wordpress\/wp-content\/uploads\/2023\/06\/Screenshot-2023-06-09-at-6.47.30\u202fPM.png 2094w, https:\/\/www.caribmendez.net\/wordpress\/wp-content\/uploads\/2023\/06\/Screenshot-2023-06-09-at-6.47.30\u202fPM-300x226.png 300w, https:\/\/www.caribmendez.net\/wordpress\/wp-content\/uploads\/2023\/06\/Screenshot-2023-06-09-at-6.47.30\u202fPM-1024x770.png 1024w, https:\/\/www.caribmendez.net\/wordpress\/wp-content\/uploads\/2023\/06\/Screenshot-2023-06-09-at-6.47.30\u202fPM-768x577.png 768w, https:\/\/www.caribmendez.net\/wordpress\/wp-content\/uploads\/2023\/06\/Screenshot-2023-06-09-at-6.47.30\u202fPM-1536x1155.png 1536w, https:\/\/www.caribmendez.net\/wordpress\/wp-content\/uploads\/2023\/06\/Screenshot-2023-06-09-at-6.47.30\u202fPM-2048x1539.png 2048w\" sizes=\"auto, (max-width: 500px) 100vw, 500px\" \/><\/li>\n\n\n\n<li>If you are running in production or if you are NOT using Adobe CF Builder it is recommended to NOT install the <em>Admin Component for Remote Start\/Stop <\/em>If you are not running in production I disable auto start with the system<br><img loading=\"lazy\" decoding=\"async\" width=\"500\" height=\"376\" class=\"wp-image-73\" style=\"width: 500px;\" src=\"https:\/\/www.caribmendez.net\/wordpress\/wp-content\/uploads\/2023\/06\/Screenshot-2023-06-09-at-6.49.48\u202fPM.png\" alt=\"Components to install\" srcset=\"https:\/\/www.caribmendez.net\/wordpress\/wp-content\/uploads\/2023\/06\/Screenshot-2023-06-09-at-6.49.48\u202fPM.png 2094w, https:\/\/www.caribmendez.net\/wordpress\/wp-content\/uploads\/2023\/06\/Screenshot-2023-06-09-at-6.49.48\u202fPM-300x226.png 300w, https:\/\/www.caribmendez.net\/wordpress\/wp-content\/uploads\/2023\/06\/Screenshot-2023-06-09-at-6.49.48\u202fPM-1024x770.png 1024w, https:\/\/www.caribmendez.net\/wordpress\/wp-content\/uploads\/2023\/06\/Screenshot-2023-06-09-at-6.49.48\u202fPM-768x577.png 768w, https:\/\/www.caribmendez.net\/wordpress\/wp-content\/uploads\/2023\/06\/Screenshot-2023-06-09-at-6.49.48\u202fPM-1536x1155.png 1536w, https:\/\/www.caribmendez.net\/wordpress\/wp-content\/uploads\/2023\/06\/Screenshot-2023-06-09-at-6.49.48\u202fPM-2048x1539.png 2048w\" sizes=\"auto, (max-width: 500px) 100vw, 500px\" \/><\/li>\n\n\n\n<li>Once the installer has completed you should now be directed to <a href=\"http:\/\/127.0.0.1:8500\/administrator\/index.cfm\" target=\"_blank\" rel=\"noreferrer noopener\">http:\/\/127.0.0.1:8500\/administrator\/index.cfm<\/a> \u2013 If everything went well you should see the administration screen. Login with the password you set during setup to finalize server setup.<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p>At this point, you have a perfectly usable installation of ColdFusion but there are a couple of issues. First, since the install is utilizing the embedded JDK that Adobe provides, ColdFusion is running under an X86 version of JDK 17 utilizing Apple&#8217;s Rosetta technology. Since there are several different JDK 17 distributions that are ARM64 native there is no reason to use emulation to run an X86 variant.. For this guide I chose to use Amazon&#8217;s Coretto JDK 17. You can see this by opening up Activity Monitor and search for Java you will see it is running under X86 emulation.<br> <img loading=\"lazy\" decoding=\"async\" width=\"1000\" height=\"142\" class=\"wp-image-74\" style=\"width: 1000px;\" src=\"https:\/\/www.caribmendez.net\/wordpress\/wp-content\/uploads\/2023\/06\/Screenshot-2023-06-09-at-6.53.21\u202fPM.png\" alt=\"Activity Monitor with Java running under emulation\" srcset=\"https:\/\/www.caribmendez.net\/wordpress\/wp-content\/uploads\/2023\/06\/Screenshot-2023-06-09-at-6.53.21\u202fPM.png 2201w, https:\/\/www.caribmendez.net\/wordpress\/wp-content\/uploads\/2023\/06\/Screenshot-2023-06-09-at-6.53.21\u202fPM-300x43.png 300w, https:\/\/www.caribmendez.net\/wordpress\/wp-content\/uploads\/2023\/06\/Screenshot-2023-06-09-at-6.53.21\u202fPM-1024x146.png 1024w, https:\/\/www.caribmendez.net\/wordpress\/wp-content\/uploads\/2023\/06\/Screenshot-2023-06-09-at-6.53.21\u202fPM-768x109.png 768w, https:\/\/www.caribmendez.net\/wordpress\/wp-content\/uploads\/2023\/06\/Screenshot-2023-06-09-at-6.53.21\u202fPM-1536x218.png 1536w, https:\/\/www.caribmendez.net\/wordpress\/wp-content\/uploads\/2023\/06\/Screenshot-2023-06-09-at-6.53.21\u202fPM-2048x291.png 2048w\" sizes=\"auto, (max-width: 1000px) 100vw, 1000px\" \/><\/p>\n\n\n\n<p>To fix this you need to:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>In the ColdFusion admin console click on Server Settings, and then Java &amp; JVM<\/li>\n\n\n\n<li>Under the Java Virtual Machine Path, point it to the appropriate JDK install. If utilizing Amazon Coretto the path is <strong>\/Library\/Java\/JavaVirtualMachines\/Library\/Java\/JavaVirtualMachines\/amazon-corretto-17.jdk\/Contents\/Home<\/strong>\n<ul class=\"wp-block-list\">\n<li>You can also edit the jvm.config file with a text editor to make the change. Assuming you used the default install location this file is found at \/Applications\/ColdFusion2023\/cfusion\/bin\/jvm.config<br><img loading=\"lazy\" decoding=\"async\" width=\"1000\" height=\"775\" class=\"wp-image-76\" style=\"width: 1000px;\" src=\"https:\/\/www.caribmendez.net\/wordpress\/wp-content\/uploads\/2023\/06\/Screenshot-2023-06-09-at-6.57.58\u202fPM-1.png\" alt=\"\" srcset=\"https:\/\/www.caribmendez.net\/wordpress\/wp-content\/uploads\/2023\/06\/Screenshot-2023-06-09-at-6.57.58\u202fPM-1.png 2272w, https:\/\/www.caribmendez.net\/wordpress\/wp-content\/uploads\/2023\/06\/Screenshot-2023-06-09-at-6.57.58\u202fPM-1-300x232.png 300w, https:\/\/www.caribmendez.net\/wordpress\/wp-content\/uploads\/2023\/06\/Screenshot-2023-06-09-at-6.57.58\u202fPM-1-1024x793.png 1024w, https:\/\/www.caribmendez.net\/wordpress\/wp-content\/uploads\/2023\/06\/Screenshot-2023-06-09-at-6.57.58\u202fPM-1-768x595.png 768w, https:\/\/www.caribmendez.net\/wordpress\/wp-content\/uploads\/2023\/06\/Screenshot-2023-06-09-at-6.57.58\u202fPM-1-1536x1190.png 1536w, https:\/\/www.caribmendez.net\/wordpress\/wp-content\/uploads\/2023\/06\/Screenshot-2023-06-09-at-6.57.58\u202fPM-1-2048x1586.png 2048w\" sizes=\"auto, (max-width: 1000px) 100vw, 1000px\" \/><\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>After you have made this change you will need to restart ColdFusion. Assuming a default install location run the following command in Terminal: <code><strong>\/Applications\/ColdFusion2023<\/strong>\/<strong>cfusion\/bin\/coldfusion restart<\/strong><\/code><\/li>\n\n\n\n<li>Once restarted validate that the admin interface is still accessible, and check Activity Monitor you should now see Java running natively under Apple silicon.<br><img loading=\"lazy\" decoding=\"async\" width=\"1000\" height=\"129\" class=\"wp-image-78\" style=\"width: 1000px;\" src=\"https:\/\/www.caribmendez.net\/wordpress\/wp-content\/uploads\/2023\/06\/Screenshot-2023-06-09-at-6.57.20\u202fPM.png\" alt=\"\" srcset=\"https:\/\/www.caribmendez.net\/wordpress\/wp-content\/uploads\/2023\/06\/Screenshot-2023-06-09-at-6.57.20\u202fPM.png 2197w, https:\/\/www.caribmendez.net\/wordpress\/wp-content\/uploads\/2023\/06\/Screenshot-2023-06-09-at-6.57.20\u202fPM-300x39.png 300w, https:\/\/www.caribmendez.net\/wordpress\/wp-content\/uploads\/2023\/06\/Screenshot-2023-06-09-at-6.57.20\u202fPM-1024x132.png 1024w, https:\/\/www.caribmendez.net\/wordpress\/wp-content\/uploads\/2023\/06\/Screenshot-2023-06-09-at-6.57.20\u202fPM-768x99.png 768w, https:\/\/www.caribmendez.net\/wordpress\/wp-content\/uploads\/2023\/06\/Screenshot-2023-06-09-at-6.57.20\u202fPM-1536x198.png 1536w, https:\/\/www.caribmendez.net\/wordpress\/wp-content\/uploads\/2023\/06\/Screenshot-2023-06-09-at-6.57.20\u202fPM-2048x264.png 2048w\" sizes=\"auto, (max-width: 1000px) 100vw, 1000px\" \/><\/li>\n<\/ul>\n\n\n\n<p>ColdFusion is now running natively under Apple Silicon under M1 \/ M2. If this is all you need enjoy! Read on for instructions on how to integrate your ColdFusion install with Apache. For this guide I am utilizing Apache as installed from the excellent package manager brew <a rel=\"noreferrer noopener\" href=\"http:\/\/brew.sh\" data-type=\"URL\" data-id=\"http:\/\/brew.sh\" target=\"_blank\">http:\/\/brew.sh<\/a> Once you&#8217;ve installed Apache you can integrate ColdFusion by doing the following:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>From the terminal type in <strong><code>sudo \/Applications\/ColdFusion2023\/cfusion\/runtime\/bin\/wsconfig<\/code><\/strong> This utility modifies your Apache configuration to allow Apache to serve ColdFusion pages<\/li>\n\n\n\n<li>Click on the Add button<\/li>\n\n\n\n<li>Enter the path to the Apache configuration directory for brew installs on Apple silicon the path is <strong>\/opt\/homebrew\/etc\/httpd<\/strong><\/li>\n\n\n\n<li>Click on the Advanced button and add the path the the Apache (httpd) binary<br><img loading=\"lazy\" decoding=\"async\" width=\"1000\" height=\"470\" class=\"wp-image-79\" style=\"width: 1000px;\" src=\"https:\/\/www.caribmendez.net\/wordpress\/wp-content\/uploads\/2023\/06\/Screenshot-2023-06-09-at-7.02.59\u202fPM.png\" alt=\"\" srcset=\"https:\/\/www.caribmendez.net\/wordpress\/wp-content\/uploads\/2023\/06\/Screenshot-2023-06-09-at-7.02.59\u202fPM.png 1762w, https:\/\/www.caribmendez.net\/wordpress\/wp-content\/uploads\/2023\/06\/Screenshot-2023-06-09-at-7.02.59\u202fPM-300x141.png 300w, https:\/\/www.caribmendez.net\/wordpress\/wp-content\/uploads\/2023\/06\/Screenshot-2023-06-09-at-7.02.59\u202fPM-1024x481.png 1024w, https:\/\/www.caribmendez.net\/wordpress\/wp-content\/uploads\/2023\/06\/Screenshot-2023-06-09-at-7.02.59\u202fPM-768x361.png 768w, https:\/\/www.caribmendez.net\/wordpress\/wp-content\/uploads\/2023\/06\/Screenshot-2023-06-09-at-7.02.59\u202fPM-1536x722.png 1536w\" sizes=\"auto, (max-width: 1000px) 100vw, 1000px\" \/><\/li>\n\n\n\n<li>Click Ok, Ok, and then yes to restart Apache<\/li>\n\n\n\n<li>Finally I had to update the ColdFusion server.xml file in order for pages to be served correctly. This file can be found at <strong>\/Applications\/ColdFusion2023\/cfusion\/runtime\/conf\/server.xml<\/strong><\/li>\n\n\n\n<li>Locate the AJP\/1.3 Connector protocol section and add the following text <strong>address=&#8221;::1&#8243;<\/strong><br><img loading=\"lazy\" decoding=\"async\" width=\"1000\" height=\"224\" class=\"wp-image-80\" style=\"width: 1000px;\" src=\"https:\/\/www.caribmendez.net\/wordpress\/wp-content\/uploads\/2023\/06\/Screenshot-2023-06-09-at-7.07.28\u202fPM.png\" alt=\"\" srcset=\"https:\/\/www.caribmendez.net\/wordpress\/wp-content\/uploads\/2023\/06\/Screenshot-2023-06-09-at-7.07.28\u202fPM.png 1170w, https:\/\/www.caribmendez.net\/wordpress\/wp-content\/uploads\/2023\/06\/Screenshot-2023-06-09-at-7.07.28\u202fPM-300x67.png 300w, https:\/\/www.caribmendez.net\/wordpress\/wp-content\/uploads\/2023\/06\/Screenshot-2023-06-09-at-7.07.28\u202fPM-1024x229.png 1024w, https:\/\/www.caribmendez.net\/wordpress\/wp-content\/uploads\/2023\/06\/Screenshot-2023-06-09-at-7.07.28\u202fPM-768x172.png 768w\" sizes=\"auto, (max-width: 1000px) 100vw, 1000px\" \/><\/li>\n<\/ul>\n\n\n\n<p>Restart both Apache (<strong><code>brew services restart httpd<\/code><\/strong>) and ColdFusion (<strong><code>\/Applications\/ColdFusion2023\/cfusion\/bin\/coldfusion restart<\/code><\/strong>) <\/p>\n\n\n\n<p>Disable Apple&#8217;s builtin version of Apache (Coldfusion sometimes seems to turn it on) by entering the following in the terminal<br><strong><code>sudo launchctl unload -w \/System\/Library\/LaunchDaemons\/org.apache.httpd.plist<br>sudo launchctl disable system\/org.apache.httpd<\/code><\/strong><\/p>\n\n\n\n<p>Add a test file at \/opt\/homebrew\/var\/www called test.cfm. <\/p>\n\n\n\n<p>Add the following line <strong>&lt;cfdump var=&#8221;#SERVER#&#8221;&gt; <\/strong><\/p>\n\n\n\n<p>Navigate to http:\/\/127.0.0.1:8080\/test.cfm (By default homebrew installs Apache listening on port 8080). If everything works you should see the dump of the ColdFusion server configuration. Under OS you should see ColdFusion running natively under Apple silicon.<br><img loading=\"lazy\" decoding=\"async\" width=\"500\" height=\"270\" class=\"wp-image-82\" style=\"width: 500px;\" src=\"https:\/\/www.caribmendez.net\/wordpress\/wp-content\/uploads\/2023\/06\/Screenshot-2023-06-09-at-10.19.32\u202fPM.png\" alt=\"\" srcset=\"https:\/\/www.caribmendez.net\/wordpress\/wp-content\/uploads\/2023\/06\/Screenshot-2023-06-09-at-10.19.32\u202fPM.png 488w, https:\/\/www.caribmendez.net\/wordpress\/wp-content\/uploads\/2023\/06\/Screenshot-2023-06-09-at-10.19.32\u202fPM-300x162.png 300w\" sizes=\"auto, (max-width: 500px) 100vw, 500px\" \/><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Adobe has recently released its newest version of ColdFusion. One of its notable new features is compatibility with Apple silicon. However the installer by default does not run under current versions of macOS (Intel or Apple silicon), and once installed the default install does not natively run under Apple silicon. With just a few fixes, &#8230; <span class=\"more\"><a class=\"more-link\" href=\"https:\/\/www.caribmendez.net\/?p=71\">[Read more&#8230;]<\/a><\/span><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[28,2],"tags":[25,26,23,24,27,29],"class_list":{"0":"entry","1":"post","2":"publish","3":"author-carib-mendez","4":"post-71","6":"format-standard","7":"category-coldfusion","8":"category-macintosh","9":"post_tag-apple","10":"post_tag-apple-silicon","11":"post_tag-coldfusion","12":"post_tag-coldfusion2023","13":"post_tag-m1","14":"post_tag-m2"},"_links":{"self":[{"href":"https:\/\/www.caribmendez.net\/index.php?rest_route=\/wp\/v2\/posts\/71","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.caribmendez.net\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.caribmendez.net\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.caribmendez.net\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.caribmendez.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=71"}],"version-history":[{"count":10,"href":"https:\/\/www.caribmendez.net\/index.php?rest_route=\/wp\/v2\/posts\/71\/revisions"}],"predecessor-version":[{"id":94,"href":"https:\/\/www.caribmendez.net\/index.php?rest_route=\/wp\/v2\/posts\/71\/revisions\/94"}],"wp:attachment":[{"href":"https:\/\/www.caribmendez.net\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=71"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.caribmendez.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=71"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.caribmendez.net\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=71"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}