Contents
1.Apache2 installation and virtual host configuration
1.1 httpd Install
1 |
# dnf -y install httpd |
Version Check
1 2 3 |
# httpd -v Server version: Apache/2.4.53 (Oracle Linux Server) Server built: May 16 2023 00:00:00 |
1.2 Apache Configuration
①Edit httpd.conf file
1 |
# cp /etc/httpd/conf/httpd.conf /etc/httpd/conf/httpd.conf_bak |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
# vi /etc/httpd/conf/httpd.conf Line 91 : Specify administrator address ServerAdmin <mail address> Add per line 101 「#ServerName www.example.com:80」 ServerName <Domain name> Line 149 : Change (Indexes is deleted) Options FollowSymLinks Line 156 : Change AllowOverride All Line 169 : file name accessible only by directory name Add "index.php index.cgi index.htm" Add to the last line ServerTokens Prod |
②If Firewalld is enabled, HTTP service permission is required; HTTP uses [80/TCP]
1 2 3 |
# firewall-cmd --add-service=http --permanent # firewall-cmd --add-service=https --permanent # firewall-cmd --reload |
➂Apache Auto-Start Configuration
1 2 |
# systemctl start httpd # systemctl enable httpd |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
# systemctl status httpd ● httpd.service - The Apache HTTP Server Loaded: loaded (/usr/lib/systemd/system/httpd.service; enabled; preset: di> Active: active (running) since Sun 2023-08-13 19:27:51 JST; 16s ago Docs: man:httpd.service(8) Main PID: 5002 (httpd) Status: "Total requests: 0; Idle/Busy workers 100/0;Requests/sec: 0; Bytes> Tasks: 213 (limit: 9321) Memory: 39.5M CPU: 68ms CGroup: /system.slice/httpd.service tq5002 /usr/sbin/httpd -DFOREGROUND tq5003 /usr/sbin/httpd -DFOREGROUND tq5004 /usr/sbin/httpd -DFOREGROUND tq5005 /usr/sbin/httpd -DFOREGROUND mq5006 /usr/sbin/httpd -DFOREGROUND Aug 13 19:27:51 Lepard systemd[1]: Starting The Apache HTTP Server... Aug 13 19:27:51 Lepard httpd[5002]: Server configured, listening on: port 80 Aug 13 19:27:51 Lepard systemd[1]: Started The Apache HTTP Server. |
④operation check
If you access http://[server IP address] and you see the Oracle Apache2 Test Page as shown below, it is OK.

⑤Hide the Oracle Welcome page, create a new index.html file as a Test Page, and check the operation of apache.
Rename the welcome page
1 |
# mv /etc/httpd/conf.d/welcome.conf /etc/httpd/conf.d/welcome.conf.org |
Create HTML test page
1 2 3 4 5 6 7 8 |
# vi /var/www/html/index.html <html> <body> <div style="width: 100%; font-size: 40px; font-weight: bold; text-align: center;"> Apache Test Page </div> </body> </html> |
If you access http:// and the Test Page is displayed as shown below, it is OK.

1.3 Virtual Host Settings
Assign and configure the domain name [oracle.korodes.com] to the document root [/var/www/html/oracle.korodes.com] directory for virtual host operation
1 2 3 4 5 6 7 8 9 10 11 12 13 |
# vi /etc/httpd/conf.d/vhost.conf Virtual Host Domain Settings <VirtualHost *:80> DocumentRoot /var/www/html/oracle.korodes.com ServerName oracle.korodes.com ServerAdmin <Email Address> ErrorLog logs/oracle.korodes.com-error_log CustomLog logs/oracle.korodes.com-access_log combined </VirtualHost> <Directory "/var/www/html/oracle.korodes.com"> Options FollowSymLinks AllowOverride All </Directory> |
Creating a Document Directory
1 |
# mkdir /var/www/html/oracle.korodes.com |
Restart Apache
1 |
# systemctl restart httpd |
2. Confirmation of CGI Script Usage
①Confirmation of CGI availability
1 2 3 |
# grep -n "^ *ScriptAlias" /etc/httpd/conf/httpd.conf 252: ScriptAlias /cgi-bin/ "/var/www/cgi-bin/" The above is displayed and available under "/var/www/cgi-bin/". |
②Create test scripts and check operation
1 2 3 4 5 |
# vi /var/www/cgi-bin/index.cgi Describe the following #!/usr/bin/python3 print("Content-type: text/html\n") print("CGI Script Test Page") |
1 2 3 |
# chmod 755 /var/www/cgi-bin/index.cgi # curl localhost/cgi-bin/index.cgi CGI Script Test Page |
3. PHP installation and configuration
①Install
1 |
# dnf -y install php php-mbstring php-pear |
②Version Check
1 2 3 4 5 |
# php -v PHP 8.0.27 (cli) (built: Jan 3 2023 16:17:26) ( NTS gcc x86_64 ) Copyright (c) The PHP Group Zend Engine v4.0.27, Copyright (c) Zend Technologies with Zend OPcache v8.0.27, Copyright (c), by Zend Technologies |
Upgrade to Php 8.2
EPEL and Remi repositories are required, so install them if you have not already done so.
1 2 |
# dnf -y install https://dl.fedoraproject.org/pub/epel/epel-release-latest-9.noarch.rpm # dnf -y install https://rpms.remirepo.net/enterprise/remi-release-9.rpm |
Stop PHP once
1 |
# dnf module disable php |
Installing PHP 8.2
1 |
# dnf module install php:remi-8.2 |
php-fpm configuration
1 2 |
# systemctl enable php-fpm Created symlink /etc/systemd/system/multi-user.target.wants/php-fpm.service → /usr/lib/systemd/system/php-fpm.service. |
③Restart Apache
After PHP installation, restarting Apache will invoke PHP-FPM (FPM : FastCGI Process Manager) by default, and php-fpm service will be started in conjunction with httpd startup.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
# systemctl restart httpd # systemctl status php-fpm ● php-fpm.service - The PHP FastCGI Process Manager Loaded: loaded (/usr/lib/systemd/system/php-fpm.service; enabled; preset: > Active: active (running) since Sun 2023-08-13 19:38:26 JST; 28s ago Main PID: 7649 (php-fpm) Status: "Processes active: 0, idle: 5, Requests: 0, slow: 0, Traffic: 0req> Tasks: 6 (limit: 9321) Memory: 14.5M CPU: 38ms CGroup: /system.slice/php-fpm.service tq7649 "php-fpm: master process (/etc/php-fpm.conf)" tq7651 "php-fpm: pool www" tq7652 "php-fpm: pool www" tq7653 "php-fpm: pool www" tq7654 "php-fpm: pool www" mq7655 "php-fpm: pool www" Aug 13 19:38:26 Lepard systemd[1]: Starting The PHP FastCGI Process Manager... Aug 13 19:38:26 Lepard systemd[1]: Started The PHP FastCGI Process Manager. |
④Confirmation of PHP operation
Create the following files
1 2 3 4 |
# vi /var/www/html/<Domain name>/test.php <?php phpinfo(); ?> |
Access http://[domain name]/test.php in your browser and if you see the following screen, it is OK
