阿里云服务器ESC实例搭建网站部署LAMP环境记录

本文是本人按如下的官方教程在阿里云ESC实例上部署LAMP环境的操作步骤+各种踩坑经历的总结记录,仅供和我一样在阿里云上折腾搭环境的小白参考。

官方教程链接:搭建个人网站-阿里云帮助中心

------------------------------------------------------------------------------------------------------------------------------

安装Apache

官方给的教程里面步骤很简单,就几行代码。但是我一共经历了三个大坑才安装成功。

坑一 httpd安装

yum install -y httpd httpd-manual mod_SSL mod_perl mod_auth_mysql

我第一次运行时就死活不行,一直报错,报no match什么的,复制粘贴第一句就这情况真的很搞心态,外加小白什么都看不懂,差点崩溃。(直到后来某次把实例玩脱了得重装系统,装了CentOS 7.9版本,这句才运行成功)

yum -y install httpd   #安装HTTPd的替换语句
systemctl start httpd
systemctl enable httpd
systemctl status httpd

坑二 80端口被占

第一次把apache给装上后,是死活起不来的,不管怎么systemctl start httpd,一看status还是dead。鱼哭了水知道,我哭了谁知道啊,太欺负人了

当时按网上办法各种改,端口改完80改433禁防火墙禁SELinux禁enforce之类吧啦吧啦一通改,终于所有报错都没有了,httpd状态也变成绿色的active,于是我喜滋滋去浏览器访问,收获的全是无法连接。都给我整无语了。

直到很久以后我才终于找到问题根源——阿里云盾把80端口占了。

(因为apache总是有各种问题,所以就半路改装别的了:一次改安装tomcat,8080端口浏览器就访问到了,一次用docker装nginx,映射80端口访问到了,外加之前HTTP运行反复查看端口的一些情况,故而引起了我的怀疑)

netstat -ano  #列出所有端口的情况

netstat -tulpn  #查看在使用的端口
losf -i :80   #查看80端口情况

是他是他,就是他。 

终于破案了。呜呜呜。HTTP的配置文件etc/httpd/conf/httpd.conf都改麻了也没想到原来是这样。

方一:设置转发端口(这个我到最后也没研究明白)

方二:修改端口(打不过我就绕路嘛)

sudo fuser -k 80/tcp   #试过,云盾还在,我绝望了

 etc/httpd/conf/httpd.conf 改两处端口号,我这里是改到8000去了

vim编辑器:

i键,进入编辑模式。

按esc,按:,wq保存退出vim

坑三 设置安全组

我确定以及肯定,防火墙SELinux和enforce都没有阻拦。但是还是无法连接。

网上说要设安全组。

设就设呗,来都来了。心累。

 给8000端口加安全组,我还回去确认了下,8000确实在使用,而且确实只有一个进程在用。

浏览器访问 http://公网ip:8000

终于见到这个页面了,太不容易了。虽然它看起来很简单,但对我来说,却是走了很久很久才终于来到它面前。 

(题外话:我在阿里云上除了实例ESC,还白嫖了一个域名,IP和域名也做了对应配置。但是这里用IP访问就有,用域名就还是无法连接。不晓得为什么。)

安装Mysql

教程步骤如下,我一路都没遇到坎。

wget http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm
yum install -y mysql57-community-release-el7-10.noarch.rpm
yum install -y mysql-community-server --nogpgcheck
systemctl start mysqld.service
systemctl status mysqld.service
grep "password" /var/log/mysqld.log
mysql -uroot -p
ALTER USER 'root'@'localhost' IDENTIFIED BY '<新密码>';

#分号要加,分号对MySQL很重要
create database pbootcms; 
show databases;
exit;      #quit好像也行

一路畅通无阻是真的爽,直到后来我再使用数据库和想在本地连接阿里云数据库。。。。

重置密码

咱也不知道为什么,ALTER USER 'root'@'localhost' IDENTIFIED BY '<新密码>';这句里面明明设了新密码,但是msql -uroot -p 输入新密码就是抱错。

气人哦,上一秒设的密码,下一秒再登就说我密码错误。(难道exit出去要重启mysql???不知道,当时没试)

跳过输入密码

重置mysql密码第一步,设置输密码这步可以跳过。

vim /etc/my.conf

/etc/my.conf 是mysql的配置文件,

在[mysqld]后面任意一行添加“skip-grant-tables”用来跳过密码验证的过程,

修改密码
mysql -uroot -p;

 输密码直接跳过,哦吼~

use mysql;  #这步我总是忘记
update user set authentication_string='密码' where user='root';

Mysql5.7的密码字段不叫password,而是叫authentication_string

Mysql5.7也没有password()函数

#刷新系统权限表
flush privileges;

exit;
systemctl restart mysqld   #重启数据库
后续

最后,将刚才在/etc/my.cnf配置文件中的“skip-grant-tables”删除,然后再重启遍数据库

重装mysql

放个重装mysql要用的语句,毕竟重装解决100%的问题。(别问了,都是泪)

rpm -qa | grep -i mysql
yum -y remove   ###

find / -name mysql
rm -rf  ###

设置本地远程连接

本地navicat不能连接云服务器的MySQL是因为没有开放连接其他主机的权限。

进入mysql
#进入mysql并查询user表
​​​​​​mysql -uroot -p  

use mysql;

select  User,authentication_string,Host from user;

 目前root只能连接本地。

 设置

要设置远程连接权限:

一可以把root的host改为%(%代表所有主句)

update user set host='%' where user='root';

 二可以新建一个开放给所有主机的新用户

#新建一个'root123'用户,并开放给所有主机
GRANT ALL PRIVILEGES ON *.* TO 'root123'@'%' IDENTIFIED BY 'root123的密码';

(我选的方二)再次查询用户表,确认用户和权限已经设置好

select  User,authentication_string,Host from user;

#保持修改退出+重启(看情况要不要操作)
flush privileges;
exit;
systemctl restart mysqld
本地确认

本地navicat测试连接,成功

(很简单对吧,但事实上我折腾了两天才做到的,呜呜呜。)

安装PHP

#运行以下命令,添加EPEL源。
yum install -y \
https://repo.ius.io/ius-release-el7.rpm \
https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
#运行以下命令,添加Webtatic源。
rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
yum install -y php70w-devel php70w.x86_64 php70w-cli.x86_64 php70w-common.x86_64 php70w-gd.x86_64 php70w-ldap.x86_64 php70w-mbstring.x86_64 php70w-mcrypt.x86_64  php70w-pdo.x86_64   php70w-mysqlnd  php70w-fpm php70w-opcache php70w-pecl-redis php70w-pecl-mongodb
systemctl restart httpd
php -v

安装成功,(PHP一路安装也很顺利,没有什么坎,欣慰.jpg)

还可以在/var/www/html/ 添加test.php文件,看下从浏览器访问的方式验证。

chmod -R a+w /var/www/html
touch /var/www/html/test.php

vim /var/www/html/test.php

<?php
   echo "hello world";
?>

 我只是想跟着教程学习部署LAMP环境罢了,所以后面的关于PbootCMS就没再操作了。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
安装Zabbix监控系统需要以下步骤: 1. 登录到阿里云服务器ESC。 2. 安装所需的依赖软件包。可以使用以下命令安装: ``` sudo apt-get update sudo apt-get install apache2 mysql-server php php-mysql php-gd php-xml php-bcmath php-mbstring php-ldap php-xmlrpc ``` 3. 下载Zabbix软件包。可以从Zabbix官方网站下载最新的稳定版本。 4. 解压缩下载的软件包。可以使用以下命令解压缩: ``` tar -zxvf zabbix-<version>.tar.gz ``` 5. 进入解压后的目录。例如: ``` cd zabbix-<version> ``` 6. 配置Zabbix服务器。可以使用以下命令进行配置: ``` ./configure --enable-server --enable-agent --with-mysql --with-net-snmp --with-libcurl --with-libxml2 ``` 7. 编译并安装Zabbix服务器。可以使用以下命令进行编译和安装: ``` make install ``` 8. 创建Zabbix数据库。可以使用以下命令创建数据库: ``` mysql -u root -p create database zabbix character set utf8 collate utf8_bin; grant all privileges on zabbix.* to 'zabbix'@'localhost' identified by 'password'; flush privileges; exit; ``` 9. 导入Zabbix数据库模板。可以使用以下命令导入模板: ``` cd database/mysql mysql -u zabbix -p zabbix < schema.sql mysql -u zabbix -p zabbix < images.sql mysql -u zabbix -p zabbix < data.sql ``` 10. 配置Zabbix服务器。可以编辑Zabbix服务器配置文件`zabbix_server.conf`,设置数据库连接等参数。 11. 启动Zabbix服务器和代理。可以使用以下命令启动: ``` zabbix_server zabbix_agentd ``` 12. 配置Zabbix前端。可以将Zabbix前端文件复制到Apache的网站目录下,并设置相应的权限。 13. 在浏览器中访问Zabbix前端,按照界面提示进行初始化配置。 14. 登录到Zabbix前端,配置主机和监控项等。 希望以上步骤对您有帮助!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值