一、安装Apache
sudo yum install httpd
安装成功后,Apache操作命令:
systemctl start httpd //启动apache
systemctl stop httpd //停止apache
systemctl restart httpd //重启apache
systemctl enable httpd //设置apache开机启动
(1)为了让其他机器访问我们的服务器,可能需要进行一些设置:
在防火墙中开放80端口
现在需要将http服务器加入防火墙以允许外部访问:
sudo firewall-cmd --add-service=http --permanent
sudo firewall-cmd --add-port=80/tcp --permanent
--permanent参数表示这是一条永久防火墙规则。
而对于自定义的端口(如81),也需要添加防火墙规则:
firewall-cmd --zone=public --add-port=81/tcp --permanent
重启Firewall使规则生效:
systemctl restart firewall
(2)了解下httpd服务器的配置文件文件,大致要知道这些配置文件是干嘛的以及存放在什么位置
作用 | 存放路径 |
服务目录 | /etc/httpd |
主配置文件 | /etc/httpd/conf/httpd.conf |
网站数据目录 | /var/www/html |
访问日志 | /var/log/httpd/access_log |
错误日志 | /var/log/httpd/error_log |
主要来看看httpd服务程序的主配置文件(/etc/httpd/conf/httpd.conf),主配置文件最为常见的参数包括:
参数名 | 作用 |
ServerRoot | 服务目录 |
ServerAdmin | 管理员邮箱 |
User | 运行服务的用户 |
Group | 运行服务的用户组 |
ServerName | 网站服务器的域名 |
DocumentRoot | 网站数据目录 |
Lister | 监听的ip地址与端口号 |
DirectoryLidex | 默认的索引页页面 |
ErrorLog | 错误日志文件 |
CustomLog | 访问日志文件 |
Timeout | 网页超时时间,默认为300秒 |
Include | 需要加载的其他文件 |
从上面表格中可以得知DocumentRoot正是用于定义网站数据保存路径的参数,其参数的默认值是把网站数据存放到了/var/www/html目录中的,而网站首页的名称应该叫做index.html,因此可以手动的向这个目录中写入一个文件来替换掉httpd服务程序的默认网页,这种操作是立即生效的。
二、PHP安装
PHP一般centos都安装了,即使没有安装也很简单,一句命令搞定:
sudo yum install php php-mysql php-gd libjpeg* php-ldap php-odbc php-pear php-xml php-xmlrpc php-mbstring php-bcmath php-mhash
安装完成后重启Apache服务器:
sudo systemctl restart httpd.service
在 /var/www/html/ 目录下新建test.php,写入如下代码并保存:
<?php
phpinfo();
?>
然后在浏览器中打开http://localhost/test.php,如果显示如下页面,说明php安装成功
三、安装mysql
1.下载并安装MySLQ官方的yum respository:
wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm
sudo yum -y install mysql57-community-release-el7-10.noarch.rpm
安装mysql服务器:
sudo yum -y install mysql-community-server
2.配置mysql数据库:
(1)首先运行mysql:
sudo systemctl start mysqld
查看mysq的运行状态:
sudo systemctl status mysqld
此时,mysql已经正常运行了,不过想要进入mysql得先找出root用户的初始密码,此密码是安装时自动随即设置的,可以通过如下命令在日志文件中找出密码,然后通过该密码进入mysql。
grep "password" /var/log/mysqld.log
(2)使用初始密码进入数据库:
mysql -u root-p
必须修改初始密码后才能操作数据库,使用如下命令修改数据库密码:
ALTER USER 'root'@'localhost' IDENTIFIED BY 'New_Password';
这里有一个问题,如果你的新密码过于简单,修改会失败。mysql从5.6版本后引入了validate_password插件用于检测密码强度,密码如果不符合预定义的策略会返回错误。
mysql完整的初始密码规则可以通过如下命令查看(前提是:你已经修改了密码,这很尴尬):
mysql> SHOW VARIABLES LIKE 'validate_password%';
+--------------------------------------+-------+
| Variable_name | Value |
+--------------------------------------+-------+
| validate_password_check_user_name | OFF |
| validate_password_dictionary_file | |
| validate_password_length | 4 |
| validate_password_mixed_case_count | 1 |
| validate_password_number_count | 1 |
| validate_password_policy | LOW |
| validate_password_special_char_count | 1 |
+--------------------------------------+-------+
7 rows in set (0.00 sec)
不过,我们可以通过如下命令修改规则,修改后密码可以设置的很简单:
mysql> set global validate_password_policy=0;
mysql> set global validate_password_length=1;
到此,数据库的设置就完成了。
最后,删除前面安装的yum respository:
sudo yum -y remove mysql57-community-release-el7-10.noarch
至此,我们就搭建好了 PHP+Apache+MySQL 环境。