{"id":1141,"date":"2022-08-27T13:10:05","date_gmt":"2022-08-27T13:10:05","guid":{"rendered":"https:\/\/hosting-marketers.com\/news\/?p=1141"},"modified":"2022-08-27T13:13:16","modified_gmt":"2022-08-27T13:13:16","slug":"node-js-creating-an-application-on-our-cpanel-application-manager","status":"publish","type":"post","link":"https:\/\/hosting-marketers.com\/news\/2022\/08\/27\/node-js-creating-an-application-on-our-cpanel-application-manager\/","title":{"rendered":"Node JS: Creating an Application on our CPANEL Application Manager"},"content":{"rendered":"\n<h2 class=\"wp-block-heading\"><strong>Creating an Application in the cPanel Application Manager<\/strong><\/h2>\n\n\n\n<p>Hosting applications with cPanel is a two-step process:<\/p>\n\n\n\n<ol class=\"wp-block-list\"><li>Install the app on the server.\u00c2\u00a0<\/li><li>Register it with\u00c2\u00a0the <em>Application Manager<\/em>.<\/li><\/ol>\n\n\n\n<p>We\u00e2\u20ac\u2122ll look at registering an application in the next section, but first, we need to install it on the server. Users of the Git\u00e2\u201e\u00a2 version control system could clone a repository with its command-line client or cPanel\u00e2\u20ac\u2122s\u00c2\u00a0<em>Git Version Control<\/em>\u00c2\u00a0interface. However, to illustrate the process, we\u00e2\u20ac\u2122ll create a simple single-file application.<\/p>\n\n\n\n<p>Log in with SSH\u00c2\u00a0( you need to login to our customer dashboard and <a href=\"https:\/\/hosting-marketers.com\/customers\/submitticket.php?step=2&amp;deptid=1\" target=\"_blank\" rel=\"noreferrer noopener\">open a ticket<\/a> asking to open the ssh on your account ) as a cPanel user and create a new directory in their home directory.\u00c2\u00a0<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>mkdir nodejsapp<\/code><\/pre>\n\n\n\n<p>You can call the directory anything you want. This is where your app\u00e2\u20ac\u2122s code files will live. Create a file called&nbsp;<em>app.js&nbsp;<\/em>in this directory with your preferred text editor. cPanel expects the application\u00e2\u20ac\u2122s entry point to be called&nbsp;<em>app.js<\/em>, so it\u00e2\u20ac\u2122s best to stick with the standard naming convention unless you have a good reason to change it<em>.&nbsp;<\/em><\/p>\n\n\n\n<p>Paste the following code and save the new file.&nbsp;<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>const http = require('http')\nconst hostname = '127.0.0.1';\nconst port = 3000;\n\nconst server = http.createServer((req, res) =&gt; {\n  res.statusCode = 200;\n  res.setHeader('Content-Type', 'text\/plain');\n  res.end('Hello World! I am your new NodeJS app! \\n');\n});\n\nserver.listen(port, hostname, () =&gt; {\n  console.log(`Server running at http:\/\/${hostname}:${port}\/`);\n});<\/code><\/pre>\n\n\n\n<p>The code sets up an HTTP server on port 3000. It responds to web requests with the message: \u00e2\u20ac\u0153Hello World! I am your new NodeJS app!\u00e2\u20ac\u009d&nbsp;&nbsp;<\/p>\n\n\n\n<p>We could go straight to the registration step, but let\u00e2\u20ac\u2122s make sure the app works first. Run the following command, which executes our mini-app with EasyApache\u00e2\u20ac\u2122s Node.js installation.&nbsp;<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>\/opt\/cpanel\/ea-nodejs10\/bin\/node app.js<\/code><\/pre>\n\n\n\n<p>All being well, you will see a message that says:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>Server running at http:\/\/127.0.0.1:3000<\/code><\/pre>\n\n\n\n<p>Finally, open a new terminal window and log in to your server as the same cPanel user. We\u00e2\u20ac\u2122ll use the&nbsp;<em>curl&nbsp;<\/em>HTTP client to send the app a request.&nbsp;<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>curl http:\/\/127.0.0.1:3000<\/code><\/pre>\n\n\n\n<p>If it responds with \u00e2\u20ac\u0153\u00e2\u20ac\u2122Hello World! I am a NodeJS app on cPanel,\u00e2\u20ac\u009d you can move on to the next stage: registering your Node.js app with cPanel.&nbsp;<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Registering Your Node.JS Application in the cPanel Application Manager<\/strong><\/h2>\n\n\n\n<p>Registering tells the Passenger app manager and cPanel where to find your application and which domain you want to use.\u00c2\u00a0<\/p>\n\n\n\n<p>In cPanel, open the&nbsp;<em>Application Manager,&nbsp;<\/em>which you\u00e2\u20ac\u2122ll find under&nbsp;<em>Software&nbsp;<\/em>on the main page.&nbsp;<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img data-recalc-dims=\"1\" decoding=\"async\" src=\"https:\/\/i0.wp.com\/blog.cpanel.com\/wp-content\/uploads\/2020\/10\/02-cpanel-application-manager.png?w=640&#038;ssl=1\" alt=\"application manager on cpanel\" class=\"wp-image-57861\"\/><\/figure>\n\n\n\n<p>Click the&nbsp;<em>Register Application&nbsp;<\/em>button.<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img data-recalc-dims=\"1\" decoding=\"async\" src=\"https:\/\/i0.wp.com\/blog.cpanel.com\/wp-content\/uploads\/2020\/10\/03-cpanel-register-nodejs-application.png?w=640&#038;ssl=1\" alt=\"\" class=\"wp-image-57865\"\/><\/figure>\n\n\n\n<p>In the&nbsp;<em>Application Configuration<\/em>&nbsp;table, we need to provide four pieces of information:<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img data-recalc-dims=\"1\" decoding=\"async\" src=\"https:\/\/i0.wp.com\/blog.cpanel.com\/wp-content\/uploads\/2020\/10\/Screen-Shot-2020-10-21-at-10.40.05-AM.png?w=640&#038;ssl=1\" alt=\"\" class=\"wp-image-57869\"\/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li><strong>Application Name:&nbsp;<\/strong>A display name for the application. You can choose any name, but it must start with a number or letter, and it can\u00e2\u20ac\u2122t contain periods.<\/li><li><strong>Deployment Domain:&nbsp;<\/strong>The app\u00e2\u20ac\u2122s domain name. The domain must already be associated with the cPanel account.&nbsp;<\/li><li><strong>Base Application URL:&nbsp;<\/strong>The app\u00e2\u20ac\u2122s home page will be available at the&nbsp;<em>deployment domain + the base URL.&nbsp;<\/em>For example, if the&nbsp;<em>Deployment Domain&nbsp;<\/em>is \u00e2\u20ac\u0153example.com\u00e2\u20ac\u009d and you enter \u00e2\u20ac\u0153nodeapp\u00e2\u20ac\u009d in this field, the app will be served from \u00e2\u20ac\u0153example.com\/nodeapp.\u00e2\u20ac\u009d The URL extension does not have to be the same as the directory that stores the app\u00e2\u20ac\u2122s files.&nbsp;<\/li><li><strong>Application Path:&nbsp;<\/strong>The location of the app\u00e2\u20ac\u2122s files relative to the user\u00e2\u20ac\u2122s home. In our example, we created a directory in home called \u00e2\u20ac\u0153nodejsapp,\u00e2\u20ac\u009d so we\u00e2\u20ac\u2122d enter \u00e2\u20ac\u0153nodejsapp\u00e2\u20ac\u009d here.<\/li><\/ul>\n\n\n\n<p>The&nbsp;<em>Deployment Environment&nbsp;<\/em>selector indicates whether the app is under development or ready for deployment in a production environment.&nbsp;<\/p>\n\n\n\n<p>Underneath the&nbsp;<em>Application Configuration&nbsp;<\/em>table is an interface for configuring environment variables. We\u00e2\u20ac\u2122ll look at them in greater depth in the next section.&nbsp;<\/p>\n\n\n\n<p>For now, we\u00e2\u20ac\u2122ll click the&nbsp;<em>Deploy&nbsp;<\/em>button at the bottom of the page, and cPanel will configure the app\u00e2\u20ac\u2122s environment and domain. Once it\u00e2\u20ac\u2122s finished, you can open your new app in a web browser at the URL you just configured: \u00e2\u20ac\u0153example.com\/nodeapp\u00e2\u20ac\u009d in our examples.&nbsp;<\/p>\n\n\n\n<p>Unlike a real app, our one-pager has no external dependencies. If it did, cPanel&nbsp;<em>Application Manager&nbsp;<\/em>would display the&nbsp;<em>Ensure Dependencies&nbsp;<\/em>button for one-click installation. The button is only available for apps with a&nbsp;<em>package.json&nbsp;<\/em>file that lists dependencies.&nbsp;<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img data-recalc-dims=\"1\" decoding=\"async\" src=\"https:\/\/i0.wp.com\/blog.cpanel.com\/wp-content\/uploads\/2020\/10\/cpanel-nodejs-ensure-dependencies.png?w=640&#038;ssl=1\" alt=\"nodejs cpanel\" class=\"wp-image-57873\"\/><\/figure>\n\n\n\n<p>&nbsp;If you\u00e2\u20ac\u2122re following our examples and would like to see&nbsp;<em>Ensure Dependencies<\/em>&nbsp;in action, add a file called&nbsp;<em>package,json&nbsp;<\/em>to the app\u00e2\u20ac\u2122s directory with the following contents:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>{\n  \"name\": \"nodejsapp\",\n  \"version\": \"1.0.0\",\n  \"description\": \"A Node App\",\n  \"main\": \"app.js\",\n  \"author\": \"\",\n  \"license\": \"ISC\",\n  \"dependencies\": {\n    \"express\": \"^4.17.1\"\n  }\n}<\/code><\/pre>\n\n\n\n<p>As you can see, we have listed the Express web framework as a dependency.&nbsp; The&nbsp;<em>Ensure Dependencies&nbsp;<\/em>button should now be available in&nbsp;<em>Application Manager.&nbsp;<\/em>When you click it<em>,&nbsp;<\/em>cPanel installs Express and any applications and libraries it depends on.&nbsp;<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Adding Environment Variables to Your Node.JS App\u00e2\u20ac\u2122s Environment<\/strong><\/h2>\n\n\n\n<p>Environment variables are name-value pairs that store a chunk of information. They work much like variables in programming, except that they are not internal to the program but part of its external environment.&nbsp; Servers use environment variables to hold useful configuration data.&nbsp;<\/p>\n\n\n\n<p>For example, CentOS uses the&nbsp;<a href=\"https:\/\/opensource.com\/article\/17\/6\/set-path-linux\" target=\"_blank\" rel=\"noopener\">PATH environment variable<\/a>&nbsp;to store a list of directories that contain command-line programs. When you enter a command like \u00e2\u20ac\u0153ls,\u00e2\u20ac\u009d the shell looks through those directories for an executable file with that name.&nbsp; If there was no PATH variable, you\u00e2\u20ac\u2122d have to enter the full path of every command:&nbsp; \u00e2\u20ac\u0153\/usr\/bin\/ls\u00e2\u20ac\u009d instead of just \u00e2\u20ac\u0153ls.\u00e2\u20ac\u009d&nbsp;<\/p>\n\n\n\n<p>The server administrator can change the PATH environment variable, controlling the directories the shell looks in without modifying its internal code.&nbsp; With cPanel\u00e2\u20ac\u2122s&nbsp;<em>Application Manager,&nbsp;<\/em>you can add environment variables to your Node.js app\u00e2\u20ac\u2122s environment to configure its behavior in the same way.&nbsp;<\/p>\n\n\n\n<p>In our simple&nbsp;<em>app.js&nbsp;<\/em>file, this line of JavaScript tells the app the port it should listen for connections on.&nbsp;<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>const port = 3000;<\/code><\/pre>\n\n\n\n<p>In reality, a developer is unlikely to know the correct port when they write the code.&nbsp; To give users more flexibility, they could tell the app to look in its environment for a variable called PORT and to use its value when setting up the app.&nbsp;<\/p>\n\n\n\n<p>In Node.js, the JavaScript code looks something like this:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>const PORT = process.env.PORT || 3000;<\/code><\/pre>\n\n\n\n<p>This sets the app\u00e2\u20ac\u2122s internal PORT variable to the&nbsp;<a href=\"https:\/\/nodejs.org\/dist\/latest-v8.x\/docs\/api\/process.html#process_process_env\" target=\"_blank\" rel=\"noopener\">value of the environment variable<\/a>&nbsp;called PORT or to a default of 3000 if an environment variable isn\u00e2\u20ac\u2122t set.&nbsp;<\/p>\n\n\n\n<p>Now the user can tell the app which port to bind to by setting a PORT variable in the app\u00e2\u20ac\u2122s environment. To do this in cPanel\u00e2\u20ac\u2122s&nbsp;<em>Application Manager,&nbsp;<\/em>find the&nbsp;<em>Environment Variables&nbsp;<\/em>interface beneath&nbsp;<em>Application Configuration&nbsp;<\/em>and click&nbsp;<em>Add Variable.<\/em><\/p>\n\n\n\n<figure class=\"wp-block-image\"><img data-recalc-dims=\"1\" decoding=\"async\" src=\"https:\/\/i0.wp.com\/blog.cpanel.com\/wp-content\/uploads\/2020\/10\/05-cpanel-nodejs-environment-variable.png?w=640&#038;ssl=1\" alt=\"hosting marketers nodejs\" class=\"wp-image-57877\"\/><\/figure>\n\n\n\n<p>Enter a variable name and value, and click&nbsp;<em>Save.&nbsp;<\/em><\/p>\n\n\n\n<figure class=\"wp-block-image\"><img data-recalc-dims=\"1\" decoding=\"async\" src=\"https:\/\/i0.wp.com\/blog.cpanel.com\/wp-content\/uploads\/2020\/10\/06-cpanel-save-environment-variable.png?w=640&#038;ssl=1\" alt=\"\" class=\"wp-image-57881\"\/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Editing Your Node.JS Application<\/strong><\/h2>\n\n\n\n<p>You can edit a Node application\u00e2\u20ac\u2122s registration configuration in the&nbsp;<em>Application Manager.<\/em><\/p>\n\n\n\n<figure class=\"wp-block-image\"><img data-recalc-dims=\"1\" decoding=\"async\" src=\"https:\/\/i0.wp.com\/blog.cpanel.com\/wp-content\/uploads\/2020\/10\/02-cpanel-application-manager-1.png?w=640&#038;ssl=1\" alt=\"Creating an Application in the cPanel Application Manager\" class=\"wp-image-57885\"\/><\/figure>\n\n\n\n<p>Click the&nbsp;<em>Edit&nbsp;<\/em>link in the&nbsp;<em>Actions<\/em>&nbsp;column. In this interface, you can edit all the values you set when first registering your application, including the environment variables.&nbsp;<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img data-recalc-dims=\"1\" decoding=\"async\" src=\"https:\/\/i0.wp.com\/blog.cpanel.com\/wp-content\/uploads\/2020\/10\/08-cpanel-nodejs-app-edit.png?w=640&#038;ssl=1\" alt=\"\" class=\"wp-image-57889\"\/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Uninstalling Your Node.JS Application<\/strong><\/h2>\n\n\n\n<p>To uninstall or \u00e2\u20ac\u0153unregister \u00e2\u20ac\u009da Node.js application from cPanel, click the&nbsp;<em>unregister&nbsp;<\/em>link at the right of the&nbsp;<em>Application Manager&nbsp;<\/em>table.&nbsp;<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img data-recalc-dims=\"1\" decoding=\"async\" src=\"https:\/\/i0.wp.com\/blog.cpanel.com\/wp-content\/uploads\/2020\/10\/09-cpanel-nodejs-app-uninstall.png?w=640&#038;ssl=1\" alt=\"\" class=\"wp-image-57893\"\/><\/figure>\n\n\n\n<p>When you unregister an application, cPanel removes it from the list, deletes its configuration file, and dissociates it from the domain. cPanel does not delete the application\u00e2\u20ac\u2122s files, but you are free to delete them yourself in&nbsp;<em>File Manager&nbsp;<\/em>or on the command line.&nbsp;<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Bring Node.JS Hosting to Your cPanel Server<\/strong><\/h2>\n\n\n\n<p>PHP remains the most widely used server language by a large margin, but Node.js, JavaScript, and web frameworks like Express, Meteor, and Nest are increasingly popular with web developers and tech-savvy users. cPanel and WHM\u00e2\u20ac\u2122s&nbsp;<em>Application Manager&nbsp;<\/em>makes it easy for web hosts to support Node apps and JavaScript-focused users on their platform.<\/p>\n<!-- AddThis Advanced Settings generic via filter on the_content --><!-- AddThis Share Buttons generic via filter on the_content -->","protected":false},"excerpt":{"rendered":"<p>Creating an Application in the cPanel Application Manager Hosting applications with cPanel is a two-step process: Install the app on the server.\u00c2\u00a0 Register it with\u00c2\u00a0the Application Manager. We\u00e2\u20ac\u2122ll look at registering an application in the next section, but first, we need to install it on the server. Users of the Git\u00e2\u201e\u00a2 version control system could [&hellip;]<!-- AddThis Advanced Settings generic via filter on get_the_excerpt --><!-- AddThis Share Buttons generic via filter on get_the_excerpt --><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2}},"categories":[2],"tags":[],"class_list":["post-1141","post","type-post","status-publish","format-standard","hentry","category-hosting-marketers-news"],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack_shortlink":"https:\/\/wp.me\/p9Yxzd-ip","jetpack-related-posts":[{"id":801,"url":"https:\/\/hosting-marketers.com\/news\/2019\/07\/05\/how-to-deploy-an-app-nodejs-through-cpanel\/","url_meta":{"origin":1141,"position":0},"title":"how to deploy an APP NodeJS Through cPanel","author":"Admin","date":"July 5, 2019","format":false,"excerpt":"how to setup or deploy an app on nodejs with our cpanel","rel":"","context":"In &quot;deploy app nodejs cpanel&quot;","block_context":{"text":"deploy app nodejs cpanel","link":"https:\/\/hosting-marketers.com\/news\/category\/deploy-app-nodejs-cpanel\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/hosting-marketers.com\/news\/wp-content\/uploads\/2019\/07\/node2.jpg?resize=350%2C200&ssl=1","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/hosting-marketers.com\/news\/wp-content\/uploads\/2019\/07\/node2.jpg?resize=350%2C200&ssl=1 1x, https:\/\/i0.wp.com\/hosting-marketers.com\/news\/wp-content\/uploads\/2019\/07\/node2.jpg?resize=525%2C300&ssl=1 1.5x"},"classes":[]},{"id":1050,"url":"https:\/\/hosting-marketers.com\/news\/2021\/06\/02\/deploy-node-js-on-our-shared-servers\/","url_meta":{"origin":1141,"position":1},"title":"Deploy Node.js on our shared servers","author":"Admin","date":"June 2, 2021","format":false,"excerpt":"[et_pb_section][et_pb_row][et_pb_column type=\"4_4\"][et_pb_text] Version Control with Git Before we can\u00a0configure your Node.js application, the first step is getting that application on your server. There are a few options. You can use FTP to upload the copy of your application to your server, or you can use cPanel\u00e2\u20ac\u2122s native Git support to\u2026","rel":"","context":"In &quot;Hosting Marketers News&quot;","block_context":{"text":"Hosting Marketers News","link":"https:\/\/hosting-marketers.com\/news\/category\/hosting-marketers-news\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":1371,"url":"https:\/\/hosting-marketers.com\/news\/2025\/04\/15\/the-ultimate-wordpress-security-guide-for-cpanel-users-2025-edition\/","url_meta":{"origin":1141,"position":2},"title":"The Ultimate WordPress Security Guide for cPanel Users (2025 Edition)","author":"Admin","date":"April 15, 2025","format":false,"excerpt":"WordPress powers over 40% of all websites \u2014 which makes it a prime target for hackers. If you\u2019re hosting with cPanel and using WordPress, security should be your top priority. At Hosting Marketers, we give you the tools (LiteSpeed, CloudLinux, CPGuard, Cloudflare) \u2014 but here\u2019s what you need to do\u2026","rel":"","context":"In &quot;security&quot;","block_context":{"text":"security","link":"https:\/\/hosting-marketers.com\/news\/category\/security\/"},"img":{"alt_text":"Protect your WordPress site from hackers with this complete security guide. Learn how to harden your site using cPanel, PHP updates, file permissions, .htaccess rules, and best practices.","src":"https:\/\/i0.wp.com\/hosting-marketers.com\/news\/wp-content\/uploads\/2025\/04\/ChatGPT-Image-Apr-15-2025-06_36_03-AM.png?fit=1200%2C800&ssl=1&resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/hosting-marketers.com\/news\/wp-content\/uploads\/2025\/04\/ChatGPT-Image-Apr-15-2025-06_36_03-AM.png?fit=1200%2C800&ssl=1&resize=350%2C200 1x, https:\/\/i0.wp.com\/hosting-marketers.com\/news\/wp-content\/uploads\/2025\/04\/ChatGPT-Image-Apr-15-2025-06_36_03-AM.png?fit=1200%2C800&ssl=1&resize=525%2C300 1.5x, https:\/\/i0.wp.com\/hosting-marketers.com\/news\/wp-content\/uploads\/2025\/04\/ChatGPT-Image-Apr-15-2025-06_36_03-AM.png?fit=1200%2C800&ssl=1&resize=700%2C400 2x, https:\/\/i0.wp.com\/hosting-marketers.com\/news\/wp-content\/uploads\/2025\/04\/ChatGPT-Image-Apr-15-2025-06_36_03-AM.png?fit=1200%2C800&ssl=1&resize=1050%2C600 3x"},"classes":[]},{"id":86,"url":"https:\/\/hosting-marketers.com\/news\/2009\/01\/27\/ssh-connection\/","url_meta":{"origin":1141,"position":3},"title":"Best way to connect to ssh","author":"Admin","date":"January 27, 2009","format":false,"excerpt":"Instead of using the cpanel ssh interface, do you have any software for ssh connections? If you dont then try to download bitvise tunnelier, and then connect to your account using the same username and password of your cpanel, of course you must first ask support to enable ssh on\u2026","rel":"","context":"In &quot;Hosting Marketers News&quot;","block_context":{"text":"Hosting Marketers News","link":"https:\/\/hosting-marketers.com\/news\/category\/hosting-marketers-news\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":1367,"url":"https:\/\/hosting-marketers.com\/news\/2025\/04\/15\/12-essential-steps-to-secure-your-laravel-website-on-cpanel\/","url_meta":{"origin":1141,"position":4},"title":"12 Essential Steps to Secure Your Laravel Website on cPanel","author":"Admin","date":"April 15, 2025","format":false,"excerpt":"Laravel is a powerful and flexible PHP framework \u2014 but with that power comes responsibility. If you're running your Laravel application on a cPanel server, securing your environment is critical. At Hosting Marketers, we use LiteSpeed, CloudLinux, CPGuard, and Cloudflare, providing a robust foundation \u2014 but the app itself must\u2026","rel":"","context":"In &quot;security&quot;","block_context":{"text":"security","link":"https:\/\/hosting-marketers.com\/news\/category\/security\/"},"img":{"alt_text":"Laravel security is not optional \u2014 and at Hosting Marketers, we make sure you start with the best protection possible. By combining strong server-level firewalls with smart application-level hardening, your Laravel website can stay one step ahead of hackers.","src":"https:\/\/i0.wp.com\/hosting-marketers.com\/news\/wp-content\/uploads\/2025\/04\/ChatGPT-Image-Apr-15-2025-06_15_08-AM.png?fit=800%2C1200&ssl=1&resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/hosting-marketers.com\/news\/wp-content\/uploads\/2025\/04\/ChatGPT-Image-Apr-15-2025-06_15_08-AM.png?fit=800%2C1200&ssl=1&resize=350%2C200 1x, https:\/\/i0.wp.com\/hosting-marketers.com\/news\/wp-content\/uploads\/2025\/04\/ChatGPT-Image-Apr-15-2025-06_15_08-AM.png?fit=800%2C1200&ssl=1&resize=525%2C300 1.5x, https:\/\/i0.wp.com\/hosting-marketers.com\/news\/wp-content\/uploads\/2025\/04\/ChatGPT-Image-Apr-15-2025-06_15_08-AM.png?fit=800%2C1200&ssl=1&resize=700%2C400 2x"},"classes":[]},{"id":1323,"url":"https:\/\/hosting-marketers.com\/news\/2024\/05\/28\/effortlessly-separate-web-and-email-hosting-a-step-by-step-guide-to-setting-up-a-dedicated-mail-server-with-whm-cpanel\/","url_meta":{"origin":1141,"position":5},"title":"Effortlessly Separate Web and Email Hosting: A Step-by-Step Guide to Setting Up a Dedicated Mail Server with WHM\/cPanel","author":"Admin","date":"May 28, 2024","format":false,"excerpt":"[et_pb_section fb_built=\"1\" _builder_version=\"4.23\" _module_preset=\"default\" global_colors_info=\"{}\"][et_pb_row _builder_version=\"4.23\" _module_preset=\"default\" global_colors_info=\"{}\"][et_pb_column type=\"4_4\" _builder_version=\"4.23\" _module_preset=\"default\" global_colors_info=\"{}\"][et_pb_text _builder_version=\"4.24.2\" _module_preset=\"default\" global_colors_info=\"{}\"]In today\u2019s digital landscape, efficiently managing your web and email hosting can significantly enhance your server performance and security. If you\u2019re using WHM\/cPanel and looking to streamline your hosting setup, separating your web and email hosting\u2026","rel":"","context":"In &quot;email&quot;","block_context":{"text":"email","link":"https:\/\/hosting-marketers.com\/news\/category\/email\/"},"img":{"alt_text":"EmailServer","src":"https:\/\/i0.wp.com\/hosting-marketers.com\/news\/wp-content\/uploads\/2024\/05\/DALL%C2%B7E-2024-05-28-07.48.22-A-sleek-modern-data-center-with-two-distinct-server-racks-labeled-Web-Hosting-and-Email-Hosting.-The-Web-Hosting-rack-is-connected-to-a-cPanel-.webp?fit=1200%2C686&ssl=1&resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/hosting-marketers.com\/news\/wp-content\/uploads\/2024\/05\/DALL%C2%B7E-2024-05-28-07.48.22-A-sleek-modern-data-center-with-two-distinct-server-racks-labeled-Web-Hosting-and-Email-Hosting.-The-Web-Hosting-rack-is-connected-to-a-cPanel-.webp?fit=1200%2C686&ssl=1&resize=350%2C200 1x, https:\/\/i0.wp.com\/hosting-marketers.com\/news\/wp-content\/uploads\/2024\/05\/DALL%C2%B7E-2024-05-28-07.48.22-A-sleek-modern-data-center-with-two-distinct-server-racks-labeled-Web-Hosting-and-Email-Hosting.-The-Web-Hosting-rack-is-connected-to-a-cPanel-.webp?fit=1200%2C686&ssl=1&resize=525%2C300 1.5x, https:\/\/i0.wp.com\/hosting-marketers.com\/news\/wp-content\/uploads\/2024\/05\/DALL%C2%B7E-2024-05-28-07.48.22-A-sleek-modern-data-center-with-two-distinct-server-racks-labeled-Web-Hosting-and-Email-Hosting.-The-Web-Hosting-rack-is-connected-to-a-cPanel-.webp?fit=1200%2C686&ssl=1&resize=700%2C400 2x, https:\/\/i0.wp.com\/hosting-marketers.com\/news\/wp-content\/uploads\/2024\/05\/DALL%C2%B7E-2024-05-28-07.48.22-A-sleek-modern-data-center-with-two-distinct-server-racks-labeled-Web-Hosting-and-Email-Hosting.-The-Web-Hosting-rack-is-connected-to-a-cPanel-.webp?fit=1200%2C686&ssl=1&resize=1050%2C600 3x"},"classes":[]}],"jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/hosting-marketers.com\/news\/wp-json\/wp\/v2\/posts\/1141","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/hosting-marketers.com\/news\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/hosting-marketers.com\/news\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/hosting-marketers.com\/news\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/hosting-marketers.com\/news\/wp-json\/wp\/v2\/comments?post=1141"}],"version-history":[{"count":5,"href":"https:\/\/hosting-marketers.com\/news\/wp-json\/wp\/v2\/posts\/1141\/revisions"}],"predecessor-version":[{"id":1148,"href":"https:\/\/hosting-marketers.com\/news\/wp-json\/wp\/v2\/posts\/1141\/revisions\/1148"}],"wp:attachment":[{"href":"https:\/\/hosting-marketers.com\/news\/wp-json\/wp\/v2\/media?parent=1141"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/hosting-marketers.com\/news\/wp-json\/wp\/v2\/categories?post=1141"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/hosting-marketers.com\/news\/wp-json\/wp\/v2\/tags?post=1141"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}