frankchia

阿里云ecs怎么搭建php环境

感谢鲁智深的好帖

一、阿里云ECS(linux)使用Xshell连接服务器

Linux系统挂载数据盘适用系统:Linux(Redhat , CentOS,Debian,Ubuntu)*Linux的云服务器数据盘未做分区和格式化,可以根据以下步骤进行分区以及格式化操作。

下面就要准备好连接Linux服务器的工具,个人是使用Xshell。

下载地址百度软件中心(中文汉化版)

xshell 是一个强大的安全终端模拟软件,它支持SSH1, SSH2, 以及Microsoft Windows 平台的TELNET 协议。

安装Xshell后,打开Xshell出现一下键面:

xshell_1

xshell_1

设置云服务器登录信息如下图:

xshell_2

xshell_2

设置服务器登录帐号密码:

注意阿里云服务器用户名一般是root,密码请查看阿里发送的邮件

xshell_3

xshell_3

设置字符集编码utf-8

xshell_4

xshell_4

设置好了就点击ok保存。

下面就来看看我的连接后的庐山正面目吧。

xshell_5

xshell_5

黑黑的什么也看不清是不是!

其实就是这样,Linux就是一台藏在机房里的的电脑,它不像windows有华丽的桌面(就像我们现在用的pc电脑桌面),因为它不需要!做为一个服务器只需要提供网络服务就可以了,华丽的桌面只会占用资源。

二、阿里云ECS(linux)挂载数据盘

上文中提到了怎么连接阿里云服务器《使用Xshell连接阿里云服务器》,下面就要进行数据盘挂载。因为阿里云的数据盘是没有直接挂载的,所以需要自行挂载。

首先是用(fdisk -l)命令查看是否有数据盘

fdisk -l命令

fdisk -l命令

用红框标出的是数据盘大小21.4GB,本人买的是20G的硬盘阿里云还多送1.4G,这体验不错。

对数据盘进行分区

命令:fdisk  /dev/xvdb

fdisk /dev/xvdb

fdisk /dev/xvdb

依次输入“m”(查看命令参数)

在依次输入“n”,“p”,“1”,”两次回车“,“wq”

数据盘进行分区

数据盘进行分区

检查已划分好的新区

命令:fdisk -l

新区dev/xvdb1

新区dev/xvdb1

如图上已经划分出了分区1。

格式化新分区

使用“mkfs.ext3 /dev/xvdb1”命令对新分区进行格式化,格式化的时间根据硬盘大小有所不同。

格式化新分区

格式化新分区

添加分区信息

使用“echo ‘/dev/xvdb1  /mnt ext3    defaults    0  0’ >> /etc/fstab”(不含引号)命令写入新分区信息。

然后使用“cat /etc/fstab”命令查看,出现以下信息就表示写入成功。

添加分区信息

添加分区信息

挂载新分区

使用“mount -a”命令挂载新分区,然后用“df -h”命令查看,出现以下信息就说明挂载成功,可以开始使用新的分区了。

挂载新分区

挂载新分区

出现(/dev/xvdb1     20G   173M  19G   1%   /mnt)就表示挂载成功了。

三、阿里云ECS(linux)一键安装web环境

准备好连接linux服务器的工具,推荐用xshellxftp

首先登录云服务器教程《使用Xshell连接阿里云服务器》打命令去主目录(/home)看下如下:

命令一:

cd /home

命令二:

cd /home && mkdir tmp && cd tmp

配置web环境

配置web环境(一)

点击xshell上图标xftp4就可以直接链接到xftp4软件页面,将下载好的sh文件上传到/home/tmp文件夹中如下图:

web环境配置(二)

web环境配置(二)

重新链接服务器(xshell),不重新链接会造成无法找到sh文件目录。

我们就在测试一下键入一下命令:

cd /home/tmp

在键入:

ll

会出现如下键面

web环境配置(三)

web环境配置(三)

在按照下面的命令

命令一

chmod –R 777 sh

命令二

cd sh

命令三

./install.sh

会出现以下图片:

web环境配置

web环境配置(四)

根据需要选择apache或者nginx服务器,我选择的是apache,命令如下

a

为什么我会选择apache,目前apache是全球安装量最大的web服务器软件,也是完美兼容wordpress一款软件,阿里云官方推荐nginx软件,虽说性能优于apache,但兼容性不敢保证,本人也不是服务器高手,还是老实点。(不管你信不信反正我信了)

下面就坐等安装,抽根烟、泡杯茶~~~~~~~~~~。

出现如下界面就等于完成了。

web环境配置(五)

web环境配置(五)

阿里的linux一键安装包已经把ftp软件

那如何找到ftp帐号密码呢,直接键入命令:

cat account.log

注意需要在sh目录下面键入。

web环境配置(六)

web环境配置(六)

好了。所有配置都已经完成了。是不是很简单!

网站目录:/alidata/www

服务器软件目录:/alidata/server

Mysql 目录 /alidata/server/mysql

Php目录/alidata/server/php

选择了apache那么会有一个httpd 目录在

/alidata/server/httpd

apache 配置文件在/alidata/server/httpd/conf

apache虚拟主机添加 你可以修改/alidata/server/httpd/conf/vhosts/phpwind.conf

四、阿里云ECS(linux)修改myspl数据库密码

博主是linux小白,在装阿里云ECS服务器时处处难题,最坑爹的是用阿里云linux一键配置web环境时出现myspl数据库密码没有生成,出现默认的空。

其实在这里有人会重新配置环境,让软件从新配置一次(ps:总不能第二次密码还是空吧)。

博主是个技术宅,既然遇到的问题就应该去解决,花了半天的时间在云小组技术人员帮助下终于修改成功了。

如何修改myspl数据库密码

首先进入云服务器中,进入阿里云ECS默认是myspl数据库文件夹;

cd /bin

下面就要开始了!

关闭myspl数据库

killall -TERM mysqld

启动myspl数据库

mysqld_safe –skip-grant-tables

这样就可以不需要密码就可以进入myspl数据库了

进入myspl数据库

mysql

执行以下命令:(ps:分别键入)

use mysql;

update user set password=PASSWORD(‘密码自己改’) where User=’root’;

flush privileges;

quit

确认是否写入密码

mysql -uroot -ptest

重新启动myspl数据库

service mysqld restart

到这里就已经结束了,这里注意的是,如果你想用cat account.log命令去查看数据库密码的话,还会显示“空”,因为cat account.log命令只能查看到linux一键web环境配置所生成的密码,所以你修改后,用cat account.log命令是查看不到的。

如何登录myspl数据库

回到主目录下面命令如下:

cd

键入登录myspl数据库命令

mysql -u root -p

就可以看到如下图:

myspl密码键入

myspl密码键入

password是代表密码的意思,这里你键入密码是不再xshlle中显示的,这是linux类系统为了安全起见,对输入的密码进行了隐藏,你只要输入正确的字符串即可。

登录成功会看见Welcome Sign In….myspl…等等,打工告成!

五、阿里云ECS(linux)安装wordpress程序

阿里云ECS服务器linux一键安装web环境默认安装的是phpwind的论坛程序,当然不是我们想要的程序了,所以就需要删除phpwind程序装上我们自己wordpress程序,下面就来看看怎么操作。

首先用xftp链接服务器(ps:怎么链接上文已经说明),进入alidata/www/phpwind/下面就是程序文件,ctrl+A全选删除,上传已经下载好的wordpress,注意的是wordpress程序是你原网站的所有程序,如下图:

安装wordpress

安装wordpress

用服务器ip地址在浏览器中打开112.124.xx.xxx,打开后你会看见wordpress安装键面,需要输入数据库名称、数据库用户名、密码、数据库表前缀。

到这里你会发现提示,数据库密码正确,但无法创建数据库表。这里就需要数据库管理程序phpmyadmin(ps:如果你的服务器配置高手可以直接命令创建数据库表)。

首先下载phpmyadmin 上传到/alidata/www/phpwind文件目录下如下图:

安装wordpress

安装wordpress

phpmyadmin文件夹名可自定义(ps:到这里你可能是明白了phpmyadmin其实就是一个网站而已)

用:ip地址/phpmyadmin文件夹名,在浏览器中打开进入phpmyadmin网站,输入数据库用户名,密码进入phpmyadmin后台,创建数据库表怎么创建数据库表我想大家应该都会的。

好了,用ip地址在浏览器中打开试试,是不是可以创建wordpress。

恭喜你创建wordpress成功!

六、阿里云ECS(linux)安装postfix发送邮件

其实这里可以使用插件实现,但众所周知wordpress插件一旦装的太多就会造成网站打开速度变慢,为什么要选择安装postfix软件呢,在阿里云论坛有网友说装sendmail,博主刚开始也是折腾sendmail,但群众眼睛是雪亮的,sendmail发件速度太慢了(ps:一个邮件就需要30多秒出去),相对于postfix的秒射那正是爽!

postfix安装教程

postfix

postfix

我喜欢这只小老鼠!

一、安装postfix

如果您安装了sendmail请先卸载它

命令:

yum remove sendmail

安装:

yum install postfix

更改默认MTA为Postfix

命令:

/usr/sbin/alternatives –set mta /usr/sbin/sendmail.postfix

再次检查下是否将MTA改为Postfix了。

命令:

alternatives –display mta

配置Postfix,vi编辑main.cf

vi /etc/postfix/main.cf

输入?myhostname 查找定位以此类推

二、配置Postfix相关参数

1.找到 #myhostname = host.domain.tld , 修改成:myhostname = mail.yujzw.com (你自己的域名)

2.找到 #mydomain = domain.tld ,将等号后面的部分改写为你的域名,修改成:mydomain = yujzw.com(此处设置将成为E-mail地址“@”后面的部分)

3.找到 #myorigin = $mydomain ,只需将首行的#号去掉即可,其他无需变动

4.找到 inet_interfaces = localhost ,将“localhost”改为“all” ,接受来自所有网络的请求

5.找到 mydestination = $myhostname, localhost.$mydomain, localhost,在行尾添加“$mydomain”,修改成:mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain ,指定发给本地邮件的域名

6.找到 #relay_domains = $mydestination ,只需要将行首的#去掉,定义允许转发的域名

7.找到 #mynetworks = 168.100.189.0/28, 127.0.0.0/8 去掉前面的#号,指定内网和本地的IP地址范围,按照情况修改,一般无需变动

8.找到 relay_domains = ,修改成: relay_domains =

9.找到 #home_mailbox = Maildir/ ,去掉行首的#,指定用户邮箱目录

启动命令

service postfix start

检测是否运行中

master (pid 25579) is running…

设置开机启动

chkconfig postfix on

安装已经结束了,此功能已经实现邮件发送,不需要配置邮件服务器。

这里要注意的是!

如果你没有设置过php.ini文件的话就需要重新设置一边,否自不能实现发送邮件。

设置php.ini文件

编辑php.ini

vi /alidata/server/php-5.2.17/etc/php.ini-zend_optimizer.bak

vi /alidata/server/php-5.2.17/etc/php.ini

找到

;sendmail_path =

按 i 进入编辑,将这行修改为

sendmail_path = /usr/sbin/sendmail -t -i

按 Esc 键退出编辑,输入 :wq 保存退出,重新启动阿里云ecs服务器。

wordpress邮件检测发送功能

WordPress不能发信是不是由博客空间引起的,可以使用以下方法检测。新建一个php文件,命名为mail.php ,打开并填上以下代码:

1
2
3
4
5
6
7
8
<?php
$txt "hello";
// 以下的邮箱地址改成你的
$mail \'somebody@xxx.com\';
// 发送邮件
mail($mail"My subject"$txt);
echo \'message was sent!\';
?>;

保存并上传至你的网站根目录,并在浏览器运行:

网址:

http://你的博客网址/mail.php

邮箱查收邮件,如果收到标题为 My subject 的邮件,说明你的空间支持mail()函数发送邮件,也就是WordPress默认的发信方式。

可能用到的命令

/etc/init.d/postfix start (启动postfix)

/etc/init.d/postfix stop (关闭postfix)

/etc/init.d/postfix restart (重启postfix)

service postfix restart (检测运行postfix)

postsuper -d ALL(清除所有发送队列)

postqueue -p(查看邮件)

                                                                                                                                                                                                                                                            

七、阿里云ECS(linux)拒绝ip地址直接访问网站

网站可以通过ip地址访问对于网站来说是促在危险的,造成垃圾邮件袭击,ip地址被解析。就从百度、腾讯、阿里、等等大站都不能通过ip访问网站这点上,拒绝ip访问网站是必须做的。

打开xshll链接阿里云服务器,找到.conf文件,根据自己的放置目录决定。

打开编辑

命令:

vim /alidata/server/httpd-2.2.22/conf/vhosts/wordpress.conf

在底部加上如下参数:

1
2
3
4
5
6
7
8
9
10
11
<VirtualHost 112.124.xx.xxx>
ServerName 112.124.xx.xxx
<Location />
Order Allow,Deny
Deny from all
</Location>
</VirtualHost>
<VirtualHost 112.124.xx.xxx>
DocumentRoot "/alidata/www"
ServerName www.xxx.com
</VirtualHost>

注意:

ip地址是自己服务器地址

DocumentRoot是网站主目录

servername是允许访问的域名

注意

如果编辑保存时出现E45: ‘readonly’ option is set (add ! to override)。
那就不用:wq保存改用:wq!保存。

八、阿里云ECS(linux)apache设置静态文件缓存方法

我相信如果你是按照我的教程来配置阿里云服务器的话,那看到这步基本已经算出师了。

阿里云服务器就是vps,只是用的是云概念,本质没有区别,同样百度一下有很多这样设置方法,如下:

设置静态文件缓存

首先打开Apache的”httpd.conf”

vim /alidata/server/httpd-2.2.22/conf/httpd.conf

查找LoadModule expires_module modules/mod_expires.so参数,一般阿里云一键web安装的apache服务器是默认开启mod_expires.so模块。

在配置文件中httpd.conf(ps:底部)

加入如下代码:

<IfModule mod_expires.c>
ExpiresActive On
ExpiresDefault A86400
ExpiresByType image/x-icon A2592000
ExpiresByType application/x-javascript A2592000
ExpiresByType text/css A2592000
ExpiresByType image/gif A604800
ExpiresByType image/png A604800
ExpiresByType image/jpeg A604800
ExpiresByType text/plain A604800
ExpiresByType application/x-shockwave-flash A604800
ExpiresByType video/x-flv A604800
ExpiresByType application/pdf A604800
ExpiresByType text/html A900
</IfModule>

解释一下

ExpiresByType 是通过MIME类型来设置具体文件的缓存时间,A表示访问,A后面的数字表示访问后的缓存时间,例:2592000秒。

这里对css,html,gif,jpeg,png,JavaScript等进行gzip压缩。

需要注意的地方

wordpress头像是通过Gravatar显示的,所以会出现浏览器一直加载不出的现象,建议把image缓存删除即可。

分类:

技术点:

相关文章:

  • 2021-11-23
  • 2021-06-18
  • 2021-12-02
  • 2021-06-09
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-11-28
猜你喜欢
  • 2021-12-07
  • 2021-05-30
  • 2021-11-30
  • 2021-11-27
  • 2021-08-21
  • 2021-11-14
相关资源
相似解决方案