Toggle navigation


LAMP(9panel版)镜像手册

Version 5.4/5.6/7.0

由Websoft9提供的LAMP集成包是全球最经典的PHP运行环境,预装了Apache,MySQL,PHP,PHPMyAdmin,9panel以及其他必要组件,帮助您在Linux下快速的安装、部署PHP应用程序。

LAMP(Linux-Apache-MySQL-PHP)网站架构是目前国际上最流行的Web框架之一, 有Linux下WEB应用的黄金组合之称。该框架包括:Linux操作系统,Apache网络服务器, MySQL数据库,PHP编程语言。


本文档适用于通过主流云市场购买和部署了Websoft9镜像的用户,文档内容重点指导用户进行安装配置、系统基本操作和常见运维问题处理。

主流云平台包括:阿里云、腾讯云、百度云、华为云、Azure、青云

Websoft9的LAMP镜像由运行环境、数据库和运维面板三个部分组成,本镜像完全以最新版本镜像为例包括:

运行环境(PHP 7.0,Apache 2.4.8)
PHP配置文件目录: /etc/php.ini
Apache虚拟主机文件目录: /ect/httpd/conf.d
日志文件目录:/var/log/httpd
数据库(MySQL5.6.3)
MySQL数据目录: /data/mysql
MySQL配置文件: /etc/my.cnf
数据库面板访问路径:http://公网ip/phpmyadmin
运维面板(9panel)
9panel是Websoft9根据镜像用户的习惯和技术能力而研制的轻量级面板,以帮助用户快速掌握程序安装和运维工作
访问路径:http://ip/9panel
  1. 镜像需要与服务器配套使用,获取Websoft9的镜像有两种方式:
    方式一:若没有可用的云服务器,登录主流云厂商的云市场,找到由Websoft9提供的“LAMP”相关免费镜像,点击“购买”(同时会配套购买云服务器,若只打算试用请选择“按量”方式购买,实现按小时使用,接近免费)
    方式二:登录到云厂商的控制面板,找到可用的云服务器,通过更换系统盘(重装镜像)的方式
  2. 待镜像购买或更换完成后,镜像会自动安装到配套的云服务器上,当云服务实例处于“运行中”后,通过浏览器访问网址
    http://服务器公网IP/9panel,正常会出现如下界面:
  3. 如果浏览器访问以上网址没有任何反应,请检查您的安全组设置,确保80端口是开放的。

应用程序安装、使用和维护中需要用到二种账户:

1、MySQL数据库默认账号和密码:root/123456,管理地址:http://ip/phpmyadmin


2、Linux服务器操作系统账号和密码

  • 账号:root
  • 密码:是安装镜像的时候客户自行设置的,若不记得此密码,请登录云服务器后台,修改服务器密码,重启后生效
  • 登录:下载一个putty工具,通过root账号登录,参考(服务器通用文档-Linux远程管理与FTP

管理Linux系统,只需要用到两个工具即可满足大部分使用场景

  • WinSCP,可视化界面的SFTP工具,90%的Linux操作均可通过它来实现(下载WinSCP
  • Putty,远程登录&命令操作软件,需要用到命令操作的时候使用(下载Putty

具体参考:

9Panel是Websoft公司自主研发的快捷面板工具,9Panel面板主要是集成数据库管理工具、系统运维工具、文档和支持服务入口,重点在于连接知识库和服务,几乎不会占用系统资源,也不会对系统文件进行任何修改。

通过chrome或Firefox浏览器访问:http://ip/9panel,即可进入面板页面。如果没有完成应用程序的安装,请根据面板的提示完成应用程序的安装。

LAMP环境中部署网站主要分为5个步骤:

上传网站代码->修改文件系统用户权限->配置域名(非必要)->增加网站对应的数据库(非必要)->完成安装向导

LAMP环境中只部署一个网站还是多个网站、有无域名这两种情况对应的部署操作细节略有不一样,下面分别说明:

场景一:服务器只安装一个网站

  1. 通过SFTP工具,将网站源文件上传到默认的根目录下:/data/wwwroot/default
  2. 通过Putty工具修改用户权限,运行如下一条命令即可:
    ~# chown -R apache.apache /data/wwwroot/default/
  3. 如果没有可用域名,请直接通过http://公网ip  的方式来访问应用
  4. 如果有可用的域名,通过域名控制台将域名解析到服务器公网IP,确保解析成功,后通过http://域名 的方式来访问应用
  5. 如果在安装向导过程中提示数据库无法自动创建,需要通过http://ip/phpmyadmin 创建数据库

场景二:服务器部署多个网站(无域名)

无域名情况下,以部署两个网站为例,具体操作如下:

  1. 通过SFTP将第一个网站目录上传到/data/wwwroot/default/目录下面,假设应用程序目录命为“mysite1”
  2. 通过Putty工具修改用户权限,运行如下一条命令即可:
    ~# chown -R apache.apache /data/wwwroot/default/
  3. 通过http://ip/mysite1 的方式来访问应用,进入安装向导
  4. 如果在安装向导过程中提示数据库无法自动创建,需要通过http://ip/phpmyadmin 创建数据库

安装第二个网站,操作步骤同样

场景三:服务器部署多个网站(共用一个域名)

以部署两个网站为例,具体操作如下:

  1. 通过SFTP将第一个网站目录上传到/data/wwwroot/default/目录下面,假设应用程序目录命为“mysite1”
  2. 通过Putty工具修改用户权限,运行如下一条命令即可:
    ~# chown -R apache.apache /data/wwwroot/default/
  3. 通过域名控制台将域名解析到服务器公网IP,确保解析成功进入下一步
  4. 通过http://域名 /mysite1 的方式来访问应用,进入安装向导
  5. 如果在安装向导过程中提示数据库无法自动创建,需要通过http://ip/phpmyadmin 创建数据库

安装第二个网站,操作步骤同样

场景四:服务器部署多个网站(多个域名)

以部署两个网站为例,具体操作如下:

  1. 通过SFTP将第一个网站目录上传到/data/wwwroot/default/目录下面,假设应用程序目录命为“mysite1”
  2. 通过Putty工具修改用户权限,运行如下一条命令即可:
    ~# chown -R apache.apache /data/wwwroot/default/
  3. 通过域名控制台将域名解析到服务器公网IP,确保解析成功进入下一步
  4. 通过SFTP进入 /ect/httpd/conf.d目录,新增一个conf文件,假设名称为mysite1.conf,将下面内容拷贝到这个配置文件中,将ServerName,ServerAlias,DocumentRoot,ErrorLog,CusomLog,Directory等的“mydomain,mysite1”等相关内容更换成你的实际域名、文件夹名称。
    <VirtualHost *:80>
    ServerName www.mydomain.com
    ServerAlias mydomain.com
    DocumentRoot "/data/wwwroot/default/mysite1"
    ErrorLog "/var/log/httpd/www.mydomain.com_error_apache.log"
    CustomLog "/var/log/httpd/www.mydomain.com_apache.log" common
    <Directory "/data/wwwroot/default/mysite1">
    Options Indexes FollowSymlinks
    AllowOverride All
    Require all granted
    </Directory>
    </VirtualHost>
  5. 重启http服务或重启服务器
  6. 通过http://域名 的方式来访问应用,进入安装向导
  7. 如果在安装向导过程中提示数据库无法自动创建,需要通过http://ip/phpmyadmin 创建数据库

安装第二个网站,操作步骤同样

Websoft9镜像默认安装了可视化MySQL管理工具phpMyadmin,其安装目录: /usr/share/phpMyAdmin。

如何使用PhpMyAdmin数据库?

  1. 通过本地Chrome或Firefox浏览器,访问:http://服务器公网IP/9panel
  2. 点击左侧菜单的“数据库管理”项,会进入“登录PhpMyAdmin”链接
  3. 选择您需要的语言,然后输入root和对应的密码,然后登录到系统中

常见的数据库相关操作包括:
修改root密码、创建数据库、创建用户和权限设置、导入和导出等,具体参考《MySQL文档-PhpMyAdmin常见操作》

上传一个扩展或模板文件夹,建议修改Linux系统的权限以便能够正常访问。网站的权限设置值建议如下:
file 644, folder 755 ,用户和用户组分别是 apache : apache

方法一:putty登录命令行方式(推荐)

~# chown -R apache.apache /data/wwwroot/default/
~# find /data/wwwroot/default/ -type d -exec chmod 755 {} \;
~# find /data/wwwroot/default/ -type f -exec chmod 644 {} \;

方法二:WinSCP右键修改,参考:使用WinSCP设置文件夹权限

域名设置分为两个步骤:

步骤1:域名控制台解析域名

如果您的域名备案(大陆之外无需备案),可以通过云厂商的域名控制台进行域名解析,操作如下:

  1. 登录域名控制台->域名解析,进入解析设置界面(以阿里云为例)
  2. 增加一条A记录,主机记录那里填写二级域名的前缀(如www,shop,test等)或通配符@,记录值填写您的服务器公网ip地址,保存
  3. 域名解析成功,等待解析生效(不同的厂商解析生效时间不一样,1分钟-24小时不等)

注意:解析生效之后,本地访问可能由于缓存问题导致仍然没有生效,请清空浏览器缓存,然后通过CMD命令行刷新本地DNS操作

步骤2:修改虚拟主机配置文件(非必要)

请修改根据不同的环境选择对应的操作方式,请使用SFTP修改/ect/httpd/conf.d/xxxx.conf文件(网站放在根目录,xxxx为vhost,多个网站xxxx对应的各个网站的虚拟主机配置文件),将其中的ServerName,ServerAlias的值替换成你的域名信息

Server_name www.mydomain.com  #绑定主域名
ServerAlias mydomain.com #绑定的副域名

修改完成后重启http服务或重启服务器后生效

说明:如果你计划在服务器上增加更多应用,本步骤是必要的

本镜像采用Linux自带的包进行安装的,因此升级更新(包括PHP、Apache、Linux更新)非常简单:

以Putty工具登录后,运行下面

~# yum update -y //升级所有包同时也升级软件和系统内核,-y当安装过程提示选择全部为"yes"
~# yum upgrade -y //只升级所有包,不升级软件和系统内核,-y当安装过程提示选择全部为"yes"

以PHP为例,假设Linux库中php最新版本是5.6.31,您服务器的php版本php5.6.19,那么升级命令运行后,php版本会升级到5.6.31

本镜像不支持大版本的升级(例如PHP5.6.x–>PHP7.0.x是不可以的)

当应用程序进行大版本升级的时候,可能会需要增加某种php扩展。

安装php扩展的步骤如下:

1、利用yum search查找扩展包

~# yum search memcached php
php-pecl-memcached - memcached module for php5

2、使用yum install安装扩展包

~# yum install -y php-pecl-memcached
Reading package lists... Done
Reading state information... Done

使用PHP应用程序的时候,php组件的启用或停用、邮件设置、上传文件大小等控制都会涉及修改php配置文件。本镜像php配置文件的安装目录为: /etc/php.ini

下面是一些与安装相关的php参数:

  • memory_limit – Minimum: 256M   //默认内存
  • upload_max_filesize – Minimum: 20M  //上传文件最大值
  • post_max_size – Minimum: 20M   //通过POST提交数据的最大值
  • max_execution_time: At Least 120 Recommended: 300  //PHP最大执行时间

需要修改上述参数的值,只需要通过SFTP打开php.ini,修改(“#”在前的项表示没有启用,请根据实际情况删除“#”),然后保存

保存后还需要重启http服务才能生效,重启命令如下:

~# systemctl restart httpd

如果您不会使用命令操作,通过云服务器后台去重启服务器也可以达到同样的效果。

实例:如何修改上传文件大小限制?

通过SFTP修改 /etc/php.ini 如下的部分

; Maximum size of POST data that PHP will accept.
post_max_size = 16M
; Maximum allowed size for uploaded files.
upload_max_filesize = 16M

保存后,重启http服务

~# systemctl restart httpd

如果您不会使用命令操作,通过云服务器后台去重启服务器也可以达到同样的效果。

实例:如何修改系统最大响应时间?

我们在运行应用程序的时候,常常会等待很长的时间之后,却收到这样的错误提示 “Maximum execution time of 30 seconds exceeded”。这种情况下就需要通过修改the max_execution_time(最大执行响应时间)的值来解决这个问题。

方法一(推荐): 通过SFTP修改 /etc/php.ini 如下的部分

; Maximum execution time of each script, in seconds
; http://php.net/max-execution-time
; Note: This directive is hardcoded to 0 for the CLI SAPI
max_execution_time = 90
; Maximum amount of time each script may spend parsing request data. It's a good
; idea to limit this time on productions servers in order to eliminate unexpectedly
; long running scripts.

方法二: 如果应用程序支持 .htaccess,请修改它:

<IfModule mod_php5.c>
php_value max_execution_time 90
</IfModule>

保存后,重启http服务

~# systemctl restart httpd

如果您不会使用命令操作,通过云服务器后台去重启服务器也可以达到同样的效果。

使用本镜像,可能需要用到的命令如下:

~# cd /data/wwwroot/default  //进入网站根目录
~# reboot //重启服务器
~# wget url  //下载url对应的文件
~# unzip xx.zip //解压xx.zip文件到当前目录

~# systemctl start | stop | restart httpd  //启动、关闭、重启http服务
~# systemctl start | stop | restart mysqld //启动、关闭、重启mysql数据库

~# yum update -y //升级所有包同时也升级软件和系统内核,-y当安装过程提示选择全部为"yes"
~# yum upgrade -y //只升级所有包,不升级软件和系统内核,-y当安装过程提示选择全部为"yes"

本文档由长沙网久软件有限公司原创,为了保证文档的严肃性和可用性,任何人不得盗用或修改后二次分发。需要的朋友们转载请标注来源,否则我们保留给予法律追究的权利。

我们会定期更新文档,请访问在线文档以获取最新版本

本文档在线地址:http://www.websoft9.com/xdocs/lamp-9panel-image-guide
合作或技术支持:http://www.websoft9.com