Magento独立服务器配置指南之一
Magento是比较耗费资源的电商平台,一般的共享空间运行Magento比较吃力,好在目前独立服务器价格也比较便宜了,购买一套独立服务器来运行Magento网站可能是改善Magento 网站速度的最好解决方案,考虑到服务器的控制面板 Cpanel ,DirectAdmin 的使用成本比较高,我们为一些喜欢钻研的客户提供一系列的服务器配置指南,客户按照我们的教程可以不用再交商业控制面板的月使用费,也不用怕免费控制面板的安全性,丰衣足食,开启我们独服的配置之旅。
这实际上就是一份我们配置自己服务器的记录,虽然无法保证完全无错,但我们写作这个系列文章时,态度非常认真,力求每一步骤的准确,如果看官发现有什么错误,请联系我们,我们会验证后予以修正。废话少说,现在开始。
新服务器已经开通,没有控制面板,准备用Ubuntu 自己配置 web 服务器, 这里是整个配置过程记录。独立服务器硬件信息:
用lshw 查看服务器硬件信息,主要信息如下:
主板: Intel DZ77SL-50K
CPU: Intel(R) Xeon(R) CPU E31220 @ 3.10GHz
内存: 32GB DDR3, 8GB(Kingston KHX1866C10D3)x 4
硬盘: 镁光 CT250BX100SSD1 250GB SSD
|
用 lsb_release -a 查看Ubuntu 版本信息如下:
Ubuntu 14.04.3 LTS
|
1. 服务器配置准备工作
一直用root操作主机并不推荐,所有要创建一个非root用户。
# useradd -d /home/magedev -m magedev
# passwd magedev
|
使用户有root权限(可以运行 sudo):
# usermod -a -G sudo magedev
|
安装sudo:
# apt-get install sudo
|
退出root用户,用新创建的 magedev 登陆,然后升级系统,
$ sudo apt-get update
$ sudo apt-get upgrade
$ sudo apt-get dist-upgrade
|
升级完成后,需要reboot 服务器:
$ sudo reboot
|
重启后,重新用ssh 登陆,然后修改 hostname:
$ sudo vi /etc/hostname
|
输入新的hostname 替换 localhost,然后重启hostname服务。
$ sudo /etc/init.d/hostname start
|
2.安装LAMP(PHP,MySql,Apache等)
在安装之前,最好检查一下相关的软件包是否已经安装,键入aptitude 可以查看所有已经安装的软件包。
现在开始安装LAMP。
安装apache
$ sudo apt-get install apache2 -y
|
安装完后,重启apache服务器:
$ sudo apache2ctl restart
|
如果出现如下AH00558 错误:
AH00558: apache2: Could not reliably determine the
server's fully qualified domain name, using 127.0.1.1.
Set the 'ServerName' directive globally to suppress
this message
|
我们需要做如下操作(仅对Apache 2.4 及以上版本使用,低版本有不同的处理方法,请google搜索)
$ sudo vi /etc/apache2/conf-available/servername.conf
|
在文件中加入下面内容:
ServerName localhost
|
最后执行下面命令,问题就可以解决了:
$ sudo a2enconf servername
$ sudo service apache2 reload
|
现在,如果用浏览器访问你服务器的IP 地址,可以看到Apache 默认页面。
安装php和mysql
$ sudo apt-get install php5 php5-curl php5-gd php5-imagick php5-imap php5-mcrypt php5-mysql -y
$ sudo apt-get install php-pear php5-memcache -y
$ sudo apt-get install libapache2-mod-php5 -y
$ php -v
$ sudo apt-get install mysql-server mysql-client -y
|
最后一步,安装mysql时,会要你添加mysql root用户的密码2次。
我们在这里已经安装了php5-mcrypt,但在Ubuntu 14 版本,安装后如果依然提示没有php mcrypt 模块,请参考这篇文章问题1
把magedev加入www-data用户组
$ sudo usermod -g www-data magedev
$ sudo chown -R www-data:www-data /var/www
$ sudo chmod -R 775 /var/www
|
这样,以后基本用我们新建的用户登录,而尽量避免用root登录进行日常的操作维护,因为在第一步中,我们已经赋予magedev root权限,对于需要root权限的目录,可以加sudo来完成。
至此,网站运行环境就基本完成了,我们可以把网站文件用SFTP 上传到 /var/www/html 目录下,导入数据库后,就可以用域名或者 IP 地址来访问网站,只是最基本的配置,后续还有很多地方要考虑,ftp,phpMyAdmin, 邮件服务,添加IP地址等等,后续我们会有其他文章详叙。
3. 服务器安全设置
修改SSH端口号
出于安全考虑,我们最好修改一下SSH端口号,步骤如下:
修改文件sshd_config
$ sudo vi /etc/ssh/sshd_config
|
我们只需修改ssh默认端口号至其他端口比如:60888
# What ports, IPs and protocols we listen for
Port 60888
|
关于端口的选择,IANA推荐使用 49152 – 65535 之间的端口,而应该避免使用 0 – 1023, 和 1024 – 49151 之间的系统保留的端口
改为sshd_config 文件后,重启ssh服务就可以了。
$ sudo service ssh restart
|
安装UFW防火墙
为安全考虑,我们应该禁止外部对不用端口的访问,这就是UFW防火墙要做的,现在我们来安装UFW:
$ sudo apt-get install ufw
|
然后配置UFW
$ sudo ufw allow 60888
$ sudo ufw allow 80
$ sudo ufw allow 443
$ sudo ufw allow 2812
$ sudo ufw default deny
|
这里60888是我们刚才加的新的SSH端口。下面我们激活ufw
$ sudo ufw enable
|
现在除了被允许的端口,其他端口都无法访问了,可以用下面命令查看哪些端口是打开的
$ sudo ufw status
|
以后如果发现有用的端口没有打开,只需用下面命令加上这个端口就可以了。
$ sudo ufw allow 需要放开的端口号
|
如果要临时禁用ufw,用下面命令:
$ sudo ufw disable
|
如果要删除已经加的规则,用下面命令:
$ ufw status numbered
$ ufw delete 6
|
上面第一命令把所有规则加上行号列示,第二命令用行号删除对应的规则。
这篇网站叙述了在ubuntu 下配置web 服务的基本步骤,后续还有更多文章对FTP,邮件服务等进行讲解。
source: http://www.bestmagento.com/magento-hosting/magento-dedicated-server-configuration-guide/
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步