


Starting from Scratch: A Complete Guide to Building a Web Server on CentOS
Start from scratch: A complete guide to building a web server on CentOS
1. Install the CentOS operating system
To build a web server, you first need to install the operating system. This article uses CentOS as an example. Download and install the CentOS operating system, select the latest version of CentOS. After completing the installation, ensure that the system has been properly configured for network connections.
2. Install LAMP (Linux, Apache, MySQL, PHP) environment
- Install Apache
Execute the following command in the terminal to install Apache:
sudo yum install httpd
After the installation is complete, start Apache:
sudo systemctl start httpd
At this time, you can enter the IP address of the server in the browser. If the Apache welcome page appears, it means the installation is successful. - Install MySQL
Execute the following command in the terminal to install MySQL:
sudo yum install mariadb-server
After the installation is complete, start MySQL:
sudo systemctl start mariadb
Then run the following command to configure MySQL security:
sudo mysql_secure_installation
Follow the prompts to configure. It is recommended to set the root user's password to a complex string and prohibit anonymous user access. After the configuration is complete, restart MySQL:
sudo systemctl restart mariadb - Install PHP
Execute the following command in the terminal to install PHP and its related modules:
sudo yum install php php-mysql php -gd php-pear
After the installation is complete, restart Apache:
sudo systemctl restart httpd
3. Basic configuration -
Modify the Apache configuration file
Open the main configuration of Apache file, open /etc/httpd/conf/httpd.conf using any text editor. Find the following line and modify it:ServerName www.example.com:80
Change "www.example.com" to your domain name or server IP address. Save the file and exit.
- Firewall Settings
If your CentOS system has enabled the firewall, you need to add rules to allow HTTP and HTTPS traffic to pass. Execute the following command in the terminal:
sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --permanent --add-service=https
Reload the firewall rules:
sudo firewall-cmd --reload
4. Website deployment and management - Create website directory
Create a new directory under the /var/www/html directory as your website root Table of contents. For example, execute the following command to create a directory named mywebsite:
sudo mkdir /var/www/html/mywebsite - Set file permissions
Execute the following command to set the owner of the website directory to User and group for the Apache process:
sudo chown -R apache:apache /var/www/html/mywebsite - Writing website code
Write your website code through any text editor and then put It is saved to the mywebsite directory. - Configuring virtual host
Open Apache’s virtual host configuration file /etc/httpd/conf.d/virtualhost.conf and use the following code example as a reference:
ServerAdmin webmaster@mywebsite.com
DocumentRoot /var/www/html/mywebsite
ServerName mywebsite.com
ServerAlias www.mywebsite.com
ErrorLog /var/log/httpd/mywebsite_error.log
CustomLog /var/log/httpd/mywebsite_access.log combined
Save the file and exit. Then restart Apache:
sudo systemctl restart httpd
5. Test website
Enter your server IP address or domain name in the browser. If you can see your website page, Indicates that the website is successfully built.
6. Conclusion
Through the guide in this article, you have learned how to build a web server on CentOS from scratch. These are the necessary steps to build a basic web server. I hope this article can help you. If you are deploying your website into a production environment, ensure proper security configuration and performance optimization.
The above is the detailed content of Starting from Scratch: A Complete Guide to Building a Web Server on CentOS. For more information, please follow other related articles on the PHP Chinese website!

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics

Backup and Recovery Policy of GitLab under CentOS System In order to ensure data security and recoverability, GitLab on CentOS provides a variety of backup methods. This article will introduce several common backup methods, configuration parameters and recovery processes in detail to help you establish a complete GitLab backup and recovery strategy. 1. Manual backup Use the gitlab-rakegitlab:backup:create command to execute manual backup. This command backs up key information such as GitLab repository, database, users, user groups, keys, and permissions. The default backup file is stored in the /var/opt/gitlab/backups directory. You can modify /etc/gitlab

The CentOS shutdown command is shutdown, and the syntax is shutdown [Options] Time [Information]. Options include: -h Stop the system immediately; -P Turn off the power after shutdown; -r restart; -t Waiting time. Times can be specified as immediate (now), minutes ( minutes), or a specific time (hh:mm). Added information can be displayed in system messages.

Improve HDFS performance on CentOS: A comprehensive optimization guide to optimize HDFS (Hadoop distributed file system) on CentOS requires comprehensive consideration of hardware, system configuration and network settings. This article provides a series of optimization strategies to help you improve HDFS performance. 1. Hardware upgrade and selection resource expansion: Increase the CPU, memory and storage capacity of the server as much as possible. High-performance hardware: adopts high-performance network cards and switches to improve network throughput. 2. System configuration fine-tuning kernel parameter adjustment: Modify /etc/sysctl.conf file to optimize kernel parameters such as TCP connection number, file handle number and memory management. For example, adjust TCP connection status and buffer size

The key differences between CentOS and Ubuntu are: origin (CentOS originates from Red Hat, for enterprises; Ubuntu originates from Debian, for individuals), package management (CentOS uses yum, focusing on stability; Ubuntu uses apt, for high update frequency), support cycle (CentOS provides 10 years of support, Ubuntu provides 5 years of LTS support), community support (CentOS focuses on stability, Ubuntu provides a wide range of tutorials and documents), uses (CentOS is biased towards servers, Ubuntu is suitable for servers and desktops), other differences include installation simplicity (CentOS is thin)

Common problems and solutions for Hadoop Distributed File System (HDFS) configuration under CentOS When building a HadoopHDFS cluster on CentOS, some common misconfigurations may lead to performance degradation, data loss and even the cluster cannot start. This article summarizes these common problems and their solutions to help you avoid these pitfalls and ensure the stability and efficient operation of your HDFS cluster. Rack-aware configuration error: Problem: Rack-aware information is not configured correctly, resulting in uneven distribution of data block replicas and increasing network load. Solution: Double check the rack-aware configuration in the hdfs-site.xml file and use hdfsdfsadmin-printTopo

Steps to configure IP address in CentOS: View the current network configuration: ip addr Edit the network configuration file: sudo vi /etc/sysconfig/network-scripts/ifcfg-eth0 Change IP address: Edit IPADDR= Line changes the subnet mask and gateway (optional): Edit NETMASK= and GATEWAY= Lines Restart the network service: sudo systemctl restart network verification IP address: ip addr

The key to installing MySQL elegantly is to add the official MySQL repository. The specific steps are as follows: Download the MySQL official GPG key to prevent phishing attacks. Add MySQL repository file: rpm -Uvh https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm Update yum repository cache: yum update installation MySQL: yum install mysql-server startup MySQL service: systemctl start mysqld set up booting

CentOS will be shut down in 2024 because its upstream distribution, RHEL 8, has been shut down. This shutdown will affect the CentOS 8 system, preventing it from continuing to receive updates. Users should plan for migration, and recommended options include CentOS Stream, AlmaLinux, and Rocky Linux to keep the system safe and stable.
