LNMP环境中部署一个网站或应用
LNMP新增网站非常容易,在新增网站之前需要知道以下六点:
- 配置文件:/etc/nginx/conf.d/default.conf
- 网站目录:/data/wwwroot/
- 管理工具:部署网站请使用 WinSCP,它包含文件管理、运行命令两方面功能
- 域名使用:若需要使用域名,请确保备案后的域名成功解析到服务器IP
- 数据库:若安装过程中数据库无法自动创建,请使用phpMyAdmin创建数据库
- 映射关系:每个网站必定在 vhost.conf 中对应唯一的虚拟主机配置段
部署一个网站还是多个网站、有无域名对应的细节略有不同,下面分别说明:
场景一:服务器只安装一个网站
由于 LNMP 环境默认已经有一个示例网站(虽然其中只有一个没有用的文件),但对你来说,部署第一个网站最佳的方式就是将示例网站修改成您的网站,只需两步:
- 通过 SFTP 工具,将网站源文件上传到此目录 /data/wwwroot/www.example.com
- 如果没有可用域名,请直接通过 http://公网ip 的方式来访问应用
- 如果有可用的域名,请完成 《域名配置》 后通过 http://域名 的方式来访问应用
场景二:服务器部署多个网站
部署第二个网站,需要在 default.conf 中增加对应的虚拟主机配置段,具体如下
在wwwroot下新建一个网站目录,假设命令为“mysite2”
将网站源文件上传到:/data/wwwroot/mysite2
根据是否有域名,选择一种操作:
有可用域名,请将下面 VirtualHost 模板拷贝到 default.conf 中,并修改其中 server_name , root , error_log , access_log 的“example 、mysite2”等相关内容更换成你的实际域名、文件夹名称。
server { listen 80; server_name www.example.com example.com; index index.html index.htm index.php; root /data/wwwroot/www.example.com; error_log /var/log/nginx/example.com-error.log crit; access_log /var/log/nginx/example.com-access.log; include conf.d/extra/*.conf; # include Rewrite # include conf.d/rewrite/wordpress.conf; }
无可用域名,请将下面Alias模板拷贝到vhost.conf中,并修改其中的路径信息
location /mysite2 { alias /data/wwwroot/mysite2; index index.php index.html; location ~ ^/9panel/.+\.php$ { alias /data/wwwroot/mysite2; fastcgi_pass unix:/dev/shm/php-fpm-default.sock; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME /data/wwwroot/$fastcgi_script_name; include fastcgi_params; } include conf.d/extra/*.conf; }
保存 default.conf , 然后重启 nginx 和 php-fpm 服务
systemctl restart nginx systemctl restart php-fpm
通过 http://ip/mysite1 的方式来访问应用,即可进入安装向导
如果在安装向导过程中提示数据库无法自动创建,需要通过http://ip/phpmyadmin 创建数据库
最后,总结 LAMP 部署网站步骤: 1.上传网站代码->2.绑定域名(非必要)3.新增站点配置或修改示例站点配置->4.增加网站对应的数据库(非必要)->5.进入安装向导
附:配置文件项说明
项 | 说明 |
---|---|
server_name | 域名 |
root | 真实的网站存放目录,务必准确无误 |
error_log | 错误日志路径 |
access_log | 访问日志路径 |