Home > Operation and Maintenance > Linux Operation and Maintenance > Master how to build a web server on CentOS and avoid common mistakes

Master how to build a web server on CentOS and avoid common mistakes

WBOY
Release: 2023-08-06 08:24:25
Original
1455 people have browsed it

Master how to build a web server on CentOS and avoid common mistakes

As an open source operating system, CentOS has been widely used in the server field. Building a web server is one of the common requirements for using CentOS. This article will introduce the detailed method of setting up a web server and remind readers to avoid common mistakes.

1. Install Apache

Apache is a powerful and stable web server software that is widely used. We first need to install Apache.

Enter the following command in the terminal to install Apache:

sudo yum install httpd
Copy after login

After the installation is complete, start Apache and set it to start automatically at boot:

sudo systemctl start httpd
sudo systemctl enable httpd
Copy after login

2. Configure Apache

After the installation is complete, we need to configure Apache. Open the Apache configuration file:

sudo vi /etc/httpd/conf/httpd.conf
Copy after login

The following are some common configuration items and their examples:

  1. Listening port

    Listen 80
    Copy after login
  2. Website Root directory

    DocumentRoot "/var/www/html"
    <Directory "/var/www/html">
     AllowOverride None
     Require all granted
    </Directory>
    Copy after login
  3. Set the default page

    DirectoryIndex index.html index.php
    Copy after login
  4. Set the virtual host

    <VirtualHost *:80>
     DocumentRoot "/var/www/html/example"
     ServerName example.com
    </VirtualHost>
    Copy after login

After the configuration is completed , save the file and restart Apache:

sudo systemctl restart httpd
Copy after login
Copy after login

3. Install PHP

PHP is a scripting language executed on the server side, and can be used with Apache to develop dynamic web pages.

Enter the following command in the terminal to install PHP and related extensions:

sudo yum install php
sudo yum install php-mysql php-gd php-opcache php-devel php-mbstring
Copy after login

After the installation is complete, edit the PHP configuration file:

sudo vi /etc/php.ini
Copy after login

The following are some common configuration items and their examples:

  1. Set the default time zone

    date.timezone = Asia/Shanghai
    Copy after login
  2. Set the upload file size limit

    upload_max_filesize = 8M
    post_max_size = 8M
    Copy after login

After the configuration is completed, Save the file and restart Apache:

sudo systemctl restart httpd
Copy after login
Copy after login

4. Install MySQL

MySQL is a popular relational database management system used to store and manage data for web applications.

Enter the following command in the terminal to install MySQL and related tools:

sudo yum install mariadb-server mariadb
Copy after login

After the installation is completed, start MySQL and set it to start automatically at boot:

sudo systemctl start mariadb
sudo systemctl enable mariadb
Copy after login

After the installation is completed, run the security script Perform initial settings:

sudo mysql_secure_installation
Copy after login

5. Configure the database

Create a database and a new user, and grant the user permission to access the database.

Log in to MySQL:

sudo mysql -u root -p
Copy after login

Create database:

CREATE DATABASE example;
Copy after login

Create new user:

CREATE USER 'user'@'localhost' IDENTIFIED BY 'password';
Copy after login

Grant permissions:

GRANT ALL PRIVILEGES ON example.* TO 'user'@'localhost';
FLUSH PRIVILEGES;
Copy after login

6. Test and Debugging

After completing the above steps, your CentOS server has set up a web server. You can access the server's IP address in your browser and you should see the Apache default page.

If any problems occur, you can debug them by:

  1. View the Apache log

    sudo tail -f /var/log/httpd/access_log
    sudo tail -f /var/log/httpd/error_log
    Copy after login
  2. View the PHP error log

    sudo tail -f /var/log/httpd/php_error_log
    Copy after login
  3. View MySQL log

    sudo tail -f /var/log/mariadb/mariadb.log
    Copy after login

7. Avoid common mistakes

In the process of building a web server, it is easy to make some mistakes Common Mistakes. The following are some things to pay attention to:

  1. Permission issues

Ensure that the permissions of Apache and related folders and files are set correctly. Example:

sudo chown -R apache:apache /var/www/html
sudo chmod -R 755 /var/www/html
Copy after login
  1. Firewall Settings

If your server has a firewall enabled, make sure the HTTP and HTTPS service ports are open. Example:

sudo firewall-cmd --zone=public --add-service=http --permanent
sudo firewall-cmd --zone=public --add-service=https --permanent
sudo firewall-cmd --reload
Copy after login
  1. File path error

When configuring Apache and PHP, ensure the correctness of the file path.

  1. The service is not started or is not set to start automatically at boot

Make sure that Apache, PHP, MySQL and other services are started and set to start automatically at boot.

Conclusion

This article introduces in detail the method of setting up a web server on CentOS and reminds readers to avoid common mistakes. I hope readers can get help from this article and successfully build their own web server.

The above is the detailed content of Master how to build a web server on CentOS and avoid common mistakes. For more information, please follow other related articles on the PHP Chinese website!

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template