<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Much Yazid Ar Rifa'i]]></title><description><![CDATA[Sharing my documentation or idea about Networking 🗿.]]></description><link>https://blog.muchyazid.my.id</link><generator>RSS for Node</generator><lastBuildDate>Wed, 22 Apr 2026 16:40:16 GMT</lastBuildDate><atom:link href="https://blog.muchyazid.my.id/rss.xml" rel="self" type="application/rss+xml"/><language><![CDATA[en]]></language><ttl>60</ttl><item><title><![CDATA[How to Configuring IP Addresses in the /etc/network/interfaces on Debian]]></title><description><![CDATA[Here I will provide an example of IP Address configuration in /etc/network/interfaces which is usually found in Debian, older versions of Ubuntu, and older versions of Linux Mint. I will make an example for Static IP Address and DHCP
A. Static
First ...]]></description><link>https://blog.muchyazid.my.id/how-to-configuring-ip-addresses-in-the-etcnetworkinterfaces-on-debian</link><guid isPermaLink="true">https://blog.muchyazid.my.id/how-to-configuring-ip-addresses-in-the-etcnetworkinterfaces-on-debian</guid><category><![CDATA[Linux]]></category><category><![CDATA[debian]]></category><dc:creator><![CDATA[Much Yazid]]></dc:creator><pubDate>Fri, 01 Nov 2024 06:19:23 GMT</pubDate><enclosure url="https://cdn.hashnode.com/res/hashnode/image/upload/v1730425523489/d1881777-755b-4a66-aadc-06dbd40a02bd.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Here I will provide an example of IP Address configuration in /etc/network/interfaces which is usually found in Debian, older versions of Ubuntu, and older versions of Linux Mint. I will make an example for Static IP Address and DHCP</p>
<h2 id="heading-a-static">A. Static</h2>
<p>First go to <code>sudo nano /etc/network/interfaces</code> .<br />For example here I want to configure the IP Address with IP 192.168.2.236 on interface enp0s5.</p>
<p><code>auto enp0s5</code><br /><code>iface enp0s5 inet static</code><br /><code>address 192.168.2.236/24</code><br /><code>gateway 192.168.2.254</code><br /><code>dns-nameservers 192.168.2.254 1.1.1.1 8.8.8.8</code></p>
<p>Here I will give an explanation of the parameters above.</p>
<div class="hn-table">
<table>
<thead>
<tr>
<td><strong><mark>COMMAND</mark></strong></td><td><strong><mark>EXPLANATION</mark></strong></td></tr>
</thead>
<tbody>
<tr>
<td><code>auto enp0s5</code></td><td>Indicates that the enp0s5 network interface should be automatically enabled when booting. This ensures that the network connection will be initialized without manual intervention.</td></tr>
<tr>
<td><code>iface enp0s5 inet static</code></td><td>Indicates that this is the configuration for interface enp0s5 for IPv4 with static mode</td></tr>
<tr>
<td><code>address 192.168.2.236/24</code></td><td>Useful for IP Address allocation with prefix /24 (255.255.255.0).</td></tr>
<tr>
<td><code>gateway 192.168.2.254</code></td><td>Useful for IP Gateway allocation</td></tr>
<tr>
<td><code>dns-nameservers 192.168.2.254 1.1.1.1 8.8.8.8</code></td><td>Specifies the DNS Server IP to access the domain name.</td></tr>
</tbody>
</table>
</div><p>After everything has been configured, save the file and restart the service network to save the changes, here is the command:</p>
<ul>
<li><p>If using systemd, <code>sudo systemctl restart networking</code></p>
</li>
<li><p>If using sysinit, <code>sudo service networking restart</code></p>
</li>
</ul>
<h2 id="heading-b-dhcp">B. DHCP</h2>
<p>For DHCP itself, it is very simple.</p>
<p><code>auto enp0s5</code><br /><code>iface enp0s5 inet dhcp</code></p>
<p>Yes it is like that, after configuring, restart the network service that I have written above</p>
]]></content:encoded></item><item><title><![CDATA[How to Calculate Subnetting Simply with Questions and Answers]]></title><description><![CDATA[One octet consists of 8 bits (11111111), 1 bit consists of different values, ordered from left to right.Here we go : 128, 64, 32, 16, 8, 4, 2, 0.
I will not explain the fundamentals of subnetting here, because it is too long, and hopefully those who ...]]></description><link>https://blog.muchyazid.my.id/how-to-calculate-subnetting-simply-with-questions-and-answers</link><guid isPermaLink="true">https://blog.muchyazid.my.id/how-to-calculate-subnetting-simply-with-questions-and-answers</guid><category><![CDATA[subnetting]]></category><category><![CDATA[networking]]></category><dc:creator><![CDATA[Much Yazid]]></dc:creator><pubDate>Thu, 17 Oct 2024 10:03:51 GMT</pubDate><enclosure url="https://cdn.hashnode.com/res/hashnode/image/upload/v1730442959814/f125ff1a-1e8c-43ad-a2d1-92447bb8e1a8.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p><a target="_blank" href="https://belajar-it.medium.com/belajar-table-subnetting-bc1184ad2862"><img src="https://miro.medium.com/v2/resize:fit:598/1*Y_y_WCfrJ1E9o1LQqCF8Og.png" alt="Subnetting Table" /></a></p>
<p>One octet consists of 8 bits (11111111), 1 bit consists of different values, ordered from left to right.<br />Here we go : 128, 64, 32, 16, 8, 4, 2, 0.</p>
<p>I will not explain the fundamentals of subnetting here, because it is too long, and hopefully those who read this already understand the basics of subnetting, but still often forget 🗿.</p>
<p>OK, here are examples of questions and answers, along with explanations below.</p>
<h2 id="heading-question">Question</h2>
<p>Find the answer below in IP <strong>192.168.10.20/28</strong> (Class C)</p>
<ol>
<li><p>Total IP</p>
</li>
<li><p>Specify the Network IP</p>
</li>
<li><p>Specify the Broadcast IP</p>
</li>
<li><p>Range of hosts that can be used</p>
</li>
<li><p>Subnet Mask</p>
</li>
<li><p>Since he is at prefix 192.168.10.20/28, what is the total number of subnets to reach host 20?</p>
</li>
</ol>
<h2 id="heading-answer">Answer</h2>
<ol>
<li><p>16</p>
</li>
<li><p>192.168.10.16</p>
</li>
<li><p>192.168.10.31</p>
</li>
<li><p>192.168.10.17 - 192.168.10.30</p>
</li>
<li><p>255.255.255.240</p>
</li>
<li><p>There are 2 = (192.168.10.0 - 192.168.10.15) and (192.168.10.16 - 192.168.10.31)</p>
</li>
</ol>
<h2 id="heading-explanation">Explanation</h2>
<ol>
<li><p>Total IP, the formula for calculating the total IP is <strong>2 ^ 4</strong>, why 2? because it is grouped between network and broadcast, and so it is 2, and why 4? we count the number of bits 0 in the host segment (4th octet). /28 if converted to binary is 11111111.11111111.11111111.11110000, okay means the number 0 is 4, then 2 ^ 4 the result is 16.</p>
</li>
<li><p>It is clear that the answer is 192.168.10.16, because if calculated from 0 then the range is 192.168.10.0 - 192.168.10.15, so it is fitting that 192.168.10.16 is used as an IP Network.</p>
</li>
<li><p>It is clear that the answer is 192.168.10.31, because the IP range itself is 192.168.10.16 - 192.168.10.31, where .31 is a broadcast.</p>
</li>
<li><p>The host range that can be used, 192.168.10.17 - 192.168.10.30, why is it only up to 30?, because .16 is as a network and .31 as a broadcast, so the host or client cannot use both ip.</p>
</li>
<li><p>Let's convert this /28 to binary numbers and look for the number 1 in the host segment (4th octet), 11111111.11111111.11111111.11110000, which means in arithmetic operations is 128+64+32+16 which results in 240. Then the answer is 255.255.255.240.</p>
</li>
<li><p>Because in this question the IP asked is 192.168.10.20/28, then we are actually in the second subnetting in this /28 prefix. Remember again because the total IP in the /28 prefix itself is 16, now it means that it is clear that we are in the second subnetting. Here's the information: Subnetting 1 = (192.168.10.0 - 192.168.10.15) Subnetting 2 = (192.168.10.16 - 192.168.10.31).</p>
</li>
</ol>
<p>Have a good day mate! ☕.</p>
]]></content:encoded></item><item><title><![CDATA[Bridge VLAN Filtering on MikroTik]]></title><description><![CDATA[Bridge VLAN Filtering Tutorial on CRS Series Switch or Router. A feature that allows you to set and manage VLANs. It is used to ensure that VLANs on the network through the bridge device can be filtered or filtered according to the VLAN settings you ...]]></description><link>https://blog.muchyazid.my.id/bridge-vlan-filtering-on-mikrotik</link><guid isPermaLink="true">https://blog.muchyazid.my.id/bridge-vlan-filtering-on-mikrotik</guid><category><![CDATA[#Mikrotik]]></category><category><![CDATA[networking]]></category><category><![CDATA[VLAN]]></category><category><![CDATA[configuration]]></category><dc:creator><![CDATA[Much Yazid]]></dc:creator><pubDate>Wed, 16 Oct 2024 13:50:43 GMT</pubDate><enclosure url="https://cdn.hashnode.com/res/hashnode/image/upload/v1730443816957/529e7c80-5de6-4f0e-bc88-e8819d6e8368.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Bridge VLAN Filtering Tutorial on CRS Series Switch or Router. A feature that allows you to set and manage VLANs. It is used to ensure that VLANs on the network through the bridge device can be filtered or filtered according to the VLAN settings you specify.</p>
<ol>
<li><h2 id="heading-topology">Topology</h2>
</li>
</ol>
<p>Here I utilize 2 Routers so it's like a Switch, 3 ROS (1 Router, 2 Switches).</p>
<p><img src="https://youthful-condition-940.notion.site/image/https%3A%2F%2Fprod-files-secure.s3.us-west-2.amazonaws.com%2F5e6f8396-813e-4c75-b721-581270c4372c%2F75c40e1a-d79a-440b-9e74-3ade701b25a9%2Fimage.png?table=block&amp;id=121275bf-8246-80a8-9168-eb6530533244&amp;spaceId=5e6f8396-813e-4c75-b721-581270c4372c&amp;width=2000&amp;userId=&amp;cache=v2" alt="the topology" /></p>
<ol start="2">
<li><h2 id="heading-configuration">Configuration</h2>
</li>
</ol>
<p>Lessgo to the configuration stage 🤙.</p>
<h3 id="heading-a-router-rtr">A. Router (RTR)</h3>
<p>Configure IP Address, Firewall NAT, DNS Server, DHCP Server, and create vlan10, vlan20, vlan99 on ether2 pointing to the switch.</p>
<p>VLAN99-MGMT = 172.16.1.0/29<br />VLAN10 = 10.10.10.0/24<br />VLAN20 = 10.20.20.0/24</p>
<p><img src="https://youthful-condition-940.notion.site/image/https%3A%2F%2Fprod-files-secure.s3.us-west-2.amazonaws.com%2F5e6f8396-813e-4c75-b721-581270c4372c%2F2972f486-42a2-4e81-8874-df16fcaa455b%2Fimage.png?table=block&amp;id=121275bf-8246-805f-aabe-ddbae39c0357&amp;spaceId=5e6f8396-813e-4c75-b721-581270c4372c&amp;width=2000&amp;userId=&amp;cache=v2" alt /></p>
<h3 id="heading-b-switch-sw-core">B. Switch (SW-CORE)</h3>
<p>Here the role of SW-CORE is as a bridge to SW-Distries that connect directly to clients with vlan10 and vlan20, so the role of SW-CORE is very crucial.</p>
<p>Actually, it could be SW-Distry directly to the Router, I just added SW-CORE so that you understand what to configure if you later encounter a case like this (RTR&gt; SW1&gt; SW2&gt; Client).</p>
<ul>
<li><p>Create a vlan99-MGMT on ether1 that points to the Router</p>
</li>
<li><p>First create the bridge interface, free name, and set the IP Address at 172.16.1.2/29 on the Bridge interface</p>
</li>
<li><p>After it is created, enter the Ports tab, enter which port you want to broadcast / forward the vlan, here according to the topology is ether1, ether2, oiya and don't forget to enter the vlan99-MGMT too, because it is he who plays the role of forwarding the vlan header, (replacement for vlan1). And set all interfaces that go to PVID 99, change from 1 to 99.</p>
<p>  <img src="https://youthful-condition-940.notion.site/image/https%3A%2F%2Fprod-files-secure.s3.us-west-2.amazonaws.com%2F5e6f8396-813e-4c75-b721-581270c4372c%2Feb627127-8eb2-4284-bd6e-4c86cab0ff1c%2Fimage.png?table=block&amp;id=121275bf-8246-80b1-bf0b-c4e8cfad5850&amp;spaceId=5e6f8396-813e-4c75-b721-581270c4372c&amp;width=2000&amp;userId=&amp;cache=v2" alt /></p>
</li>
<li><p>Then go to the VLANs tab, set according to the image below, which ones want to be Tagged and Untagged.</p>
<p>  <img src="https://youthful-condition-940.notion.site/image/https%3A%2F%2Fprod-files-secure.s3.us-west-2.amazonaws.com%2F5e6f8396-813e-4c75-b721-581270c4372c%2F3353ae34-e69d-4f05-999b-e496a392c081%2Fimage.png?table=block&amp;id=121275bf-8246-80e8-a0d3-f1822e4b4b54&amp;spaceId=5e6f8396-813e-4c75-b721-581270c4372c&amp;width=2000&amp;userId=&amp;cache=v2" alt /></p>
</li>
<li><p>After that, we just go to the Bridge tab, double click on the bridge interface name, set the PVID to 99</p>
<p>  <img src="https://youthful-condition-940.notion.site/image/https%3A%2F%2Fprod-files-secure.s3.us-west-2.amazonaws.com%2F5e6f8396-813e-4c75-b721-581270c4372c%2F1865e3ef-7740-4591-898d-d632b822f201%2Fimage.png?table=block&amp;id=121275bf-8246-8071-a265-fac17713575b&amp;spaceId=5e6f8396-813e-4c75-b721-581270c4372c&amp;width=2000&amp;userId=&amp;cache=v2" alt /></p>
</li>
</ul>
<h3 id="heading-c-switch-sw-distri">C. Switch (SW-Distri)</h3>
<p>This is where the role of SW-Distri as a direct link to the client, lessgo just set it up, here I configure ether2 in vlan10 and ether3 in vlan20.</p>
<ul>
<li><p>First create the bridge interface, free name, and set the IP Address at 172.16.1.3/29 on the Bridge interface.</p>
</li>
<li><p>After it is created, enter the Ports tab, you must pay attention to the PVID, ether1 which leads to SW-CORE must be 99, ether2 in 10 and ether3 in 20.</p>
<p>  <img src="https://youthful-condition-940.notion.site/image/https%3A%2F%2Fprod-files-secure.s3.us-west-2.amazonaws.com%2F5e6f8396-813e-4c75-b721-581270c4372c%2F2a641178-8c87-40b7-8cde-bc710678c8a1%2Fimage.png?table=block&amp;id=121275bf-8246-8097-882c-d9c9aa3a6d95&amp;spaceId=5e6f8396-813e-4c75-b721-581270c4372c&amp;width=2000&amp;userId=&amp;cache=v2" alt /></p>
</li>
<li><p>Click the VLANs tab, and set it according to the image below, yes the D (Dynamic) symbol is there because I have set the VLAN Filtering, but to prevent it from not being able to be on the remote switch, it would be better to set it first in the VLANs tab, or you can also activate the RoMON feature.</p>
<p>  <img src="https://youthful-condition-940.notion.site/image/https%3A%2F%2Fprod-files-secure.s3.us-west-2.amazonaws.com%2F5e6f8396-813e-4c75-b721-581270c4372c%2Fbb029335-e692-44a9-a3a5-2d03b8f7d924%2Fimage.png?table=block&amp;id=121275bf-8246-8025-b3c9-dcc556ca4f95&amp;spaceId=5e6f8396-813e-4c75-b721-581270c4372c&amp;width=2000&amp;userId=&amp;cache=v2" alt /></p>
</li>
<li><p>After that, we just go to the Bridge tab, double click on the bridge interface name, set the PVID to 99</p>
<p>  <img src="https://youthful-condition-940.notion.site/image/https%3A%2F%2Fprod-files-secure.s3.us-west-2.amazonaws.com%2F5e6f8396-813e-4c75-b721-581270c4372c%2F524d69da-e6ae-4dfb-959c-75a38f2b2173%2Fimage.png?table=block&amp;id=121275bf-8246-803e-9bdd-df3d88a338b7&amp;spaceId=5e6f8396-813e-4c75-b721-581270c4372c&amp;width=2000&amp;userId=&amp;cache=v2" alt /></p>
</li>
</ul>
<ol start="3">
<li><h2 id="heading-testing">Testing</h2>
<p> Finally, we will do testing on the PC Client, remember, ether2 vlan10, ether3 vlan20.</p>
<p> We start at VPC-VL10 first (vlan10):</p>
<ul>
<li><p>Click the PC, then type <code>ip dhcp</code>.</p>
</li>
<li><p>Tada, we have successfully obtained the DHCP IP, obtained at 10.10.10.254/24.</p>
<p>  <img src="https://youthful-condition-940.notion.site/image/https%3A%2F%2Fprod-files-secure.s3.us-west-2.amazonaws.com%2F5e6f8396-813e-4c75-b721-581270c4372c%2Fc6bcf08a-cec1-41c0-a490-7c997b3b34cc%2Fimage.png?table=block&amp;id=121275bf-8246-8079-adc8-e8559c2963d7&amp;spaceId=5e6f8396-813e-4c75-b721-581270c4372c&amp;width=2000&amp;userId=&amp;cache=v2" alt /></p>
</li>
</ul>
</li>
</ol>
<p>    Next open the VPC-VL20:</p>
<ul>
<li><p>Click on the PC, then type <code>ip dhcp</code>.</p>
</li>
<li><p>Tada, you have successfully obtained the DHCP IP, it can be at 10.20.20.254/24</p>
<p>  <img src="https://youthful-condition-940.notion.site/image/https%3A%2F%2Fprod-files-secure.s3.us-west-2.amazonaws.com%2F5e6f8396-813e-4c75-b721-581270c4372c%2F02a14d38-90ac-4b85-aec3-eff3bf2d07dd%2Fimage.png?table=block&amp;id=121275bf-8246-8028-97c8-dc310c26c937&amp;spaceId=5e6f8396-813e-4c75-b721-581270c4372c&amp;width=2000&amp;userId=&amp;cache=v2" alt /></p>
</li>
</ul>
<p>    Then we test ping or connectivity between PCs and ping to the internet.</p>
<p>    VPC-VL10:</p>
<ul>
<li><p>Successful ping to VPC-VL20 and ping to the internet, namely 1.1.1.1 (Cloudflare) and <a target="_blank" href="http://google.com">google.com</a>.</p>
<p>  <img src="https://youthful-condition-940.notion.site/image/https%3A%2F%2Fprod-files-secure.s3.us-west-2.amazonaws.com%2F5e6f8396-813e-4c75-b721-581270c4372c%2F6cffd84d-0ca7-4846-91ee-cd71a2b3403f%2Fimage.png?table=block&amp;id=121275bf-8246-800d-87cd-de0c606a77a9&amp;spaceId=5e6f8396-813e-4c75-b721-581270c4372c&amp;width=2000&amp;userId=&amp;cache=v2" alt /></p>
</li>
</ul>
<p>    VPC-VL20:</p>
<ul>
<li><p>Successful ping to VPC-VL10 and ping to the internet, namely 1.1.1.1 (Cloudflare) and <a target="_blank" href="http://google.com">google.com</a>.</p>
<p>  <img src="https://youthful-condition-940.notion.site/image/https%3A%2F%2Fprod-files-secure.s3.us-west-2.amazonaws.com%2F5e6f8396-813e-4c75-b721-581270c4372c%2Fd2109eca-02db-4a98-8f57-d5f109a003d7%2Fimage.png?table=block&amp;id=121275bf-8246-8015-8c41-d6af60ec8e61&amp;spaceId=5e6f8396-813e-4c75-b721-581270c4372c&amp;width=2000&amp;userId=&amp;cache=v2" alt /></p>
</li>
</ul>
<p>    It's done and it works!, this Bridge VLAN Filtering feature is indeed suitable if you utilize the Router as a Switch, because the Bridge feature itself works at Layer2.</p>
<p>    If you configure the CRS (Cloud Router Switch) series Switch, this must also be the configuration.</p>
<p>    Have a good day! ☕.</p>
]]></content:encoded></item><item><title><![CDATA[How to Install PHP 8.3 on Windows 10/11]]></title><description><![CDATA[What is PHP?
PHP (Hypertext Preprocessors) is an open-source server-side scripting language that many devs use for web development. It is also a general-purpose language that you can use to make lots of projects, including Graphical User Interfaces (...]]></description><link>https://blog.muchyazid.my.id/how-to-install-php-83-on-windows-1011</link><guid isPermaLink="true">https://blog.muchyazid.my.id/how-to-install-php-83-on-windows-1011</guid><category><![CDATA[PHP]]></category><category><![CDATA[php8]]></category><dc:creator><![CDATA[Much Yazid]]></dc:creator><pubDate>Fri, 22 Dec 2023 06:57:43 GMT</pubDate><enclosure url="https://cdn.hashnode.com/res/hashnode/image/upload/v1703147121570/e1308f6e-0f7f-43e2-aeb2-91753e13ee12.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<h2 id="heading-what-is-php">What is PHP?</h2>
<p>PHP (Hypertext Preprocessors) is an open-source server-side scripting language that many devs use for web development. It is also a general-purpose language that you can use to make lots of projects, including Graphical User Interfaces (GUIs).<br />So, PHP is a Back-End Programming.</p>
<p>PHP was created by Rasmus Lerdorf in 1993 and released in 1995.<br />Now the latest version is PHP 8.3.1, I recommend you use the latest version of PHP, because so many versions of PHP are <a target="_blank" href="https://versionhistory.net/php/">EOL</a>.</p>
<p>PHP runs on Zend Engine, like NodeJS run on V8 JavaScript Engine.<br />If you're want to use PHP as Server-side, there are many the Databases and Webservers recommended for PHP.</p>
<p>In this article I only install PHP as a command line scripting 🗿.</p>
<h3 id="heading-whats-databases-are-recommended-for-php">What's Databases are Recommended for PHP?</h3>
<p>Retrieved from <a target="_blank" href="https://www.php.net/manual/en/refs.database.vendors.php">https://www.php.net/manual/en/refs.database.vendors.php</a>, these are the databases that recommend for PHP:</p>
<ol>
<li><p>MySQL</p>
</li>
<li><p>PostgreSQL</p>
</li>
<li><p>Oracle</p>
</li>
<li><p>SQLite, etc.</p>
</li>
</ol>
<h3 id="heading-best-webservers-for-php">Best Webservers for PHP</h3>
<p>Retrieved from <a target="_blank" href="https://www.redalkemi.com/blog/best-web-servers-for-php-development">Best Web Servers for PHP Development - RedAlkemi</a>, these are the best webservers for PHP:</p>
<ol>
<li><p><strong>Apache</strong> is a popular web server that supports the use of PHP. It can be installed on a variety of operating systems, including Linux, macOS, and Windows.</p>
</li>
<li><p><strong>NGINX</strong> is another popular web server that supports the use of PHP. It is known for its high performance and low resource usage, which makes it a good choice for high-traffic websites.</p>
</li>
<li><p><strong>Microsoft IIS (Internet Information Services)</strong> is a web server that is included with the Windows operating system. It supports the use of PHP and is a good choice for applications that are hosted on a Windows server.</p>
</li>
<li><p><strong>LiteSpeed</strong> is a commercial web server that supports the use of PHP. High-traffic environments often use it because of its high performance.</p>
</li>
</ol>
<h2 id="heading-how-to-install-php-on-windows-1011">How to Install PHP on Windows 10/11</h2>
<p>First, visit <a target="_blank" href="https://www.php.net/downloads.php">https://www.php.net/downloads.php</a> and select Windows downloads with version 8.3.0.</p>
<p>Since I'm running PHP only on the command line, I'll use the Non Thread Safe type, and choose the .zip format.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1703214783658/5ecc4075-3b04-4ca9-a192-6aca3a5a8786.png" alt class="image--center mx-auto" /></p>
<p>You might be wondering why there are Thread Safe and Non Thread Safe options, <a target="_blank" href="https://stackoverflow.com/questions/1623914/what-is-thread-safe-or-non-thread-safe-in-php">what-is-thread-safe-or-non-thread-safe-in-php</a>. Most communities use Non Thread Safe, because its fast, less bugs, and more secure.</p>
<p>Open file explorer and extract .zip file.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1703218678540/2ddf3a81-ddf1-4730-a85d-8be9eb51ae28.png" alt class="image--center mx-auto" /></p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1703220188385/21156150-f976-43f8-be54-7cc4d9fd3bbd.png" alt class="image--center mx-auto" /></p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1703223211924/82996b78-2255-4321-aa59-a467d6b2e865.png" alt class="image--center mx-auto" /></p>
<p>If you open the terminal right now and type <code>php --version</code>, there must be an error 😅.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1703219837250/11756b6b-902d-4482-87dc-3834cb2d7e68.png" alt class="image--center mx-auto" /></p>
<p>Because we have not set the PATH Environment Variable of this PHP folder.<br />What is it? the PATH Environment Variable is <strong>a set of directories where executable programs are located.</strong> For simple, it allows the execution of commands.</p>
<p>Now copy the address of the folder.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1703218436113/6fa685e3-fed1-4837-8f36-8ad894b65367.png" alt class="image--center mx-auto" /></p>
<p>Then click on Windows start menu and search "edit the system environment variables" or just "env" and click it.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1703219425036/7ba14fba-b6a3-4da8-9b60-779e53f19249.png" alt class="image--center mx-auto" /></p>
<p>Click "Environment Variables...".</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1703226161876/56ab3700-da63-4c20-8a8b-dce28be602b9.png" alt class="image--center mx-auto" /></p>
<p>Go to the "System variables", then select "path" option and double-click it.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1703226548053/96a46af4-b4db-422d-8893-dd97fc5dfd28.png" alt class="image--center mx-auto" /></p>
<p>Select "New" and paste it from the PHP folder that I'm explained above. Then click OK three times 🗿.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1703226790266/60e5b528-013f-46e5-92f9-4d73cd5e8e19.png" alt class="image--center mx-auto" /></p>
<p>Okay, now open your favourite terminal, type <code>php --version</code></p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1703227157154/9f17b25c-3dfa-4c5c-9418-7aa26bea5726.png" alt class="image--center mx-auto" /></p>
<p>You have successfully installed PHP on your Windows 10/11 machine.</p>
<hr />
<p>Because I'm still new to blogging, please advise and criticize if there are mistakes in words, thank you.</p>
]]></content:encoded></item></channel></rss>