CentOS服务器不安装面板建站详细教程
一、CentOS系统简介
CentOS(Community Enterprise Operating System)是一款基于Linux内核的开源操作系统,它源自Red Hat Enterprise Linux(RHEL),在功能和稳定性上与RHEL高度相似,同时又遵循开源协议免费提供给用户使用,因此在服务器领域广受欢迎。CentOS具有高度的稳定性,能够长时间持续运行而无需频繁重启,这对于需要7×24小时不间断服务的网站服务器来说至关重要。并且CentOS拥有庞大的社区支持,用户在使用过程中遇到的各种问题,都可以在社区论坛、技术博客等渠道找到解决方案和相关教程。此外,CentOS系统的安全性也十分出色,通过定期更新系统补丁和安全策略,有效抵御各种网络攻击,保障服务器和网站数据的安全。
二、服务器准备与CentOS系统安装
- 选择服务器:你可以选择云服务器(如阿里云、腾讯云、华为云等),也可以使用物理服务器。在选择时,需根据网站的预计访问量、数据存储需求等因素,合理配置服务器的CPU、内存、硬盘和带宽资源。
- 下载CentOS镜像:访问CentOS官方网站(https://www.centos.org/download/ ),根据服务器架构选择合适的CentOS版本(如CentOS 7或CentOS 8)进行下载。一般来说,CentOS 7的兼容性和稳定性较好,是目前使用较为广泛的版本。
安装CentOS系统
- 云服务器:在云服务器管理控制台中,找到服务器的“重装系统”或“更换系统盘”功能,选择上传的CentOS镜像文件,按照提示完成系统安装。安装过程中,需设置root用户密码等基本信息。
- 物理服务器:将下载好的CentOS镜像刻录到U盘或光盘,通过服务器的BIOS设置从U盘或光盘启动,按照安装向导逐步进行操作。包括选择安装语言、分区磁盘(可选择自动分区或手动分区,手动分区能更好地根据需求分配磁盘空间)、设置网络信息等。
三、基础环境配置
更新系统:使用SSH工具(如PuTTY、Xshell)连接到CentOS服务器,以root用户登录。执行以下命令更新系统软件包:
yum update -y
该命令会自动下载并安装系统中所有可用的更新,“-y”参数表示自动确认所有安装提示,避免手动输入确认。
设置防火墙:CentOS 7默认使用firewalld作为防火墙管理工具。若要开放Web服务常用端口(如80端口用于HTTP协议,443端口用于HTTPS协议),可执行以下命令:
firewall-cmd --permanent --add-port=80/tcp firewall-cmd --permanent --add-port=443/tcp firewall-cmd --reload
第一条和第二条命令分别将80端口和443端口永久添加到防火墙规则中,第三条命令用于重新加载防火墙配置,使新规则生效。如果服务器使用的是其他防火墙工具(如iptables),则需使用相应的命令进行端口开放操作。
关闭SELinux(可选):SELinux(Security - Enhanced Linux)是Linux系统的一个安全子系统,用于增强系统的安全性。但在某些情况下,它可能会对网站运行造成干扰。若要临时关闭SELinux,可执行以下命令:
setenforce 0
若要永久关闭SELinux,需编辑配置文件
/etc/selinux/config
,将SELINUX=enforcing
改为SELINUX=disabled
,然后重启服务器使配置生效。不过,在生产环境中,建议谨慎操作,最好通过调整SELinux策略来解决问题,而不是直接关闭它。
四、安装Web服务器软件
(一)安装Nginx
添加Nginx官方源:执行以下命令添加Nginx的官方软件源:
rpm -Uvh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm
该命令会安装Nginx的源文件,方便后续通过yum命令安装和更新Nginx。
安装Nginx:添加源后,执行以下命令安装Nginx:
yum install -y nginx
启动和设置开机自启:安装完成后,使用以下命令启动Nginx服务,并设置为开机自启:
systemctl start nginx systemctl enable nginx
- 验证安装:在浏览器中输入服务器的IP地址,如果看到Nginx默认的欢迎页面,说明Nginx安装成功。
(二)安装Apache
安装Apache:执行以下命令安装Apache:
yum install -y httpd
启动和设置开机自启:安装完成后,使用以下命令启动Apache服务,并设置为开机自启:
systemctl start httpd systemctl enable httpd
- 验证安装:同样在浏览器中输入服务器的IP地址,若显示Apache默认页面,则表示安装成功。
五、安装PHP
添加PHP源:以安装PHP 7.4为例,执行以下命令添加Remi源,该源提供了丰富的PHP版本和扩展:
yum install -y epel-release yum install -y http://rpms.remirepo.net/enterprise/remi-release-7.rpm yum-config-manager --enable remi-php74
安装PHP及常用扩展:执行以下命令安装PHP和一些常用的扩展,如
php-fpm
(PHP FastCGI进程管理器)、php-mysqlnd
(用于连接MySQL数据库)、php-gd
(用于图像处理)等:yum install -y php php-fpm php-mysqlnd php-gd php-mbstring php-xml php-pear php-zip
启动和设置开机自启PHP - FPM:安装完成后,使用以下命令启动PHP - FPM服务,并设置为开机自启:
systemctl start php-fpm systemctl enable php-fpm
配置Nginx或Apache与PHP的连接
- Nginx与PHP的连接配置:编辑Nginx的虚拟主机配置文件(一般位于
/etc/nginx/conf.d/
目录下),在server块中添加以下内容:
location ~ \.php$ { root /var/www/html; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; }
上述配置中,
root
指定了网站根目录,fastcgi_pass
指定了PHP - FPM的监听地址和端口(默认是127.0.0.1:9000),fastcgi_param
设置了传递给PHP脚本的参数。修改配置后,需执行systemctl restart nginx
命令重启Nginx服务使配置生效。- Apache与PHP的连接配置:编辑Apache的配置文件
/etc/httpd/conf/httpd.conf
或在/etc/httpd/conf.d/
目录下创建新的配置文件,添加以下内容:
AddType application/x-httpd-php .php AddType application/x-httpd-php-source .phps
上述配置告诉Apache如何处理PHP文件。修改后,执行
systemctl restart httpd
命令重启Apache服务。- Nginx与PHP的连接配置:编辑Nginx的虚拟主机配置文件(一般位于
六、安装数据库(以MySQL为例)
添加MySQL官方源:执行以下命令添加MySQL的官方软件源:
rpm -Uvh https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm
安装MySQL:添加源后,执行以下命令安装MySQL服务器:
yum install -y mysql-community-server
启动和设置开机自启:安装完成后,使用以下命令启动MySQL服务,并设置为开机自启:
systemctl start mysqld systemctl enable mysqld
初始化MySQL:执行以下命令初始化MySQL,设置root用户密码等安全配置:
mysql_secure_installation
按照提示输入密码、选择是否删除匿名用户、禁止root用户远程登录、删除测试数据库等操作。
登录MySQL并创建数据库:执行
mysql -u root -p
命令,输入密码登录MySQL。然后执行以下命令创建一个新的数据库和用户(假设数据库名为your_database
,用户名为your_user
,密码为your_password
):CREATE DATABASE your_database; CREATE USER 'your_user'@'localhost' IDENTIFIED BY 'your_password'; GRANT ALL PRIVILEGES ON your_database.* TO 'your_user'@'localhost'; FLUSH PRIVILEGES;
七、部署网站
上传网站文件:将网站的源代码上传到服务器的网站根目录(Nginx默认根目录为
/var/www/html
,Apache默认根目录为/var/www/html
)。可以使用FTP工具(如FileZilla)通过SFTP协议连接到服务器,将文件上传;也可以使用scp
命令在本地和服务器之间传输文件,例如:scp -r /local/path/* root@server_ip:/var/www/html/
其中
/local/path/
是本地网站文件所在目录,server_ip
是服务器的IP地址。- 配置网站:根据网站的需求,修改网站的配置文件,如数据库连接配置等。如果是基于PHP的网站,通常在网站的配置文件中设置数据库的名称、用户名、密码等信息。
- 测试网站:在浏览器中输入服务器的IP地址或绑定的域名,访问网站,检查网站是否能够正常运行,功能是否正常。如果出现错误,需根据错误提示信息,检查Web服务器、PHP、数据库等相关配置和网站代码,进行调试和修复。
通过以上步骤,你就可以在CentOS服务器上不安装面板完成网站的搭建。整个过程虽然相对复杂,但能够让你深入了解服务器和网站运行的原理,方便后期进行更精细的优化和管理。