In this guide, we are going to discuss how to install Nginx web server on Fedora 30. Nginx, commonly pronounced as Engine ex, is an open-source, high-performance HTTP server. It can also function as a load balancer, reverse proxy, as well as an IMAP/POP3 proxy server.
Install Nginx Web Server on Fedora 30
Nginx is available on the default Fedora repositories and hence can be installed directly using the DNF package manager.
dnf install nginx
Last metadata expiration check: 0:00:30 ago on Mon 06 May 2019 06:36:34 PM EAT.
Dependencies resolved.
=======================================================================================================================================================
 Package                                  Architecture                   Version                                 Repository                       Size
=======================================================================================================================================================
Installing:
 nginx                                    x86_64                         1:1.16.0-1.fc30                         updates                         551 k
Upgrading:
 nginx-filesystem                         noarch                         1:1.16.0-1.fc30                         updates                          10 k
Installing dependencies:
 gperftools-libs                          x86_64                         2.7-5.fc30                              fedora                          287 k
 libunwind                                x86_64                         1.3.1-2.fc30                            fedora                           63 k
 nginx-mimetypes                          noarch                         2.1.48-5.fc30                           fedora                           20 k
Transaction Summary
=======================================================================================================================================================
Install  4 Packages
Upgrade  1 Package
Total download size: 931 k
Is this ok [y/N]: y
Running Nginx
Well, once the installation of Nginx is done, it is time to start it. However, if you have Apache installed and running on the same server, you need to stop and disable it from running so that you can use Nginx instead.
Disable Apache (if installed)
systemctl stop httpd
systemctl disable httpd
Start Nginx
Nginx can be started by executing the command;
systemctl start nginx
Enable Nginx to run on system boot.
If you need your Nginx HTTP server to run by default every time your server reboots, then you need to run this command;
systemctl enable nginx
Check the status of Nginx
systemctl status nginx
● nginx.service - The nginx HTTP and reverse proxy server
   Loaded: loaded (/usr/lib/systemd/system/nginx.service; enabled; vendor preset: disabled)
  Drop-In: /usr/lib/systemd/system/nginx.service.d
           └─php-fpm.conf
   Active: active (running) since Mon 2019-05-06 18:45:25 EAT; 2min 13s ago
 Main PID: 25811 (nginx)
    Tasks: 2 (limit: 1144)
   Memory: 2.5M
   CGroup: /system.slice/nginx.service
           ├─25811 nginx: master process /usr/sbin/nginx
           └─25812 nginx: worker process
May 06 18:45:24 fedora30.example.com systemd[1]: Starting The nginx HTTP and reverse proxy server...
May 06 18:45:25 fedora30.example.com nginx[25809]: nginx: [warn] could not build optimal types_hash, you should increase either types_hash_max_size: 2>
May 06 18:45:25 fedora30.example.com nginx[25809]: nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
May 06 18:45:25 fedora30.example.com nginx[25809]: nginx: configuration file /etc/nginx/nginx.conf test is successful
May 06 18:45:25 fedora30.example.com nginx[25810]: nginx: [warn] could not build optimal types_hash, you should increase either types_hash_max_size: 2>
May 06 18:45:25 fedora30.example.com systemd[1]: nginx.service: Failed to parse PID from file /run/nginx.pid: Invalid argument
May 06 18:45:25 fedora30.example.com systemd[1]: Started The nginx HTTP and reverse proxy server.
Allow Nginx on Firewalld
If you are running firewalld (running by default on Fedora 30) you need to allow Nginx through it to make accessible from outside the localhost.
firewall-cmd --add-service={http,https} --permanent
firewall-cmd --reload
Testing Nginx
Next, navigate to the web browser and test if you can access Nginx web server via the http://<hostname-or-server-IP-address>. If all is well, this will land you on Fedora Nginx test page.

Well, you are good to go. You can now perform any web server configurations to suit your needs. Cheers.
You can also check our previous guide on installing Apache web server on Fedora 30.
					