当我们安装和配置好 LNMP 环境后,然后就挂载代码,配置域名,让外网能够访问我们的服务器。
下面就是如何在 LNMP 下挂载代码,配置虚拟主机(域名)的【教程】:
这里我是自己下载了 Yii2-basic 版,稍加改动后,放在了如下的目录:
注:
“/data/www/yidian”目录也是我的 git 目录,这样以后本地修改代码,可以直接 push 到服务器上,方便本地调试。
我这里分了两个域名,后台域名“admin.chengcheng.com”,前台域名“www.chengcheng.com”。(域名随自己需要改变)。
注:
Linux 下 hosts 配置文件位置是“/etc/hosts”,添加如下两条域名:
注:
Linux 下 nginx 配置文件位置:/usr/local/nginx/conf/nginx.conf
进行下面操作时,删除键为“Ctrl + Backspace(删除键)”
1、执行 lnmp vhost add 后回车,出现如下界面:
2、这时候输入你的域名,我的是“admin.chengcheng.com”,然后回车
3、问你是否需要添加多个域名,这里我们将“www.chengcheng.com”域名也绑上,多个域名之间用空格间隔;如果不需要添加多个域名,则直接回车。
(注:带 www 和不带 www 的是不同的域名,如需带 www 和不带 www 的域名都访问同一个网站需要同时都绑定。)
4、接下来输入“admin.chengcheng.com”域名的目录位置。网站目录不存在的话会创建目录。也可以输入已经存在的目录或要设置的目录(注意如要输入必须是全路径即以/开头的完整路径!!!)。不输入直接回车的话,采用默认目录:/home/wwwroot/域名
这里我们输入准备好的目录“/data/www/yidian/admin/web”
5、是否使用伪静态?伪静态可以使 URL 更加简洁也利于 SEO,如程序支持并且需要设置伪静态的话,如启用输入 y ,不启用输入 n 回车(注意 LNMPA 或 LAMP 模式没有该选择项!。)
这里我们输入 y
6、默认已经有了 discuz、discuzx、discuzx2(Discuz X 二级目录)、wordpress、wp2(WordPress二级目录)、typecho、typecho2(Typecho二级目录)、sablog、emlog、dabr、phpwind、dedecms、drupal、ecshop、shopex 等常用的 Nginx 伪静态配置文件,可以直接输入名称进行使用,如果是二级目录则需要对应配置文件里的二级目录的名称。(这里我也不懂,自行百度)
这里直接回车跳过
7、这里是否设置日志,使用输入 y,不使用输入 n。这里我输入 y
8、如果启用需要再输入要设置的日志的名称,默认日志目录为:/home/wwwlogs/ 默认文件名为:域名.log。这里我们选择默认日志名称,回车确认
9、如果需要添加数据库输入 y ,不添加数据库输入 n 回车,我选择 n 回车。
如果要添加,需要先验证MySQL的root密码(注:输入密码将不显示)
提示Enter database name:后输入要创建的数据库名称,要创建的数据库用户名会和数据库同名,回车确认。
提示 Please enter password for mysql user 数据库名:后输入要设置的密码,回车确认。
10、如果安装了FTP服务器会询问是否添加FTP账号
如果需要添加输入 y ,不添加输入 n 回车。
提示 Enter ftp account name: 后输入要创建的FTP账号名称,回车确认。
提示 Enter password for ftp account FTP 账号:后输入要设置的密码,回车确认。
11、接下来是 1.4 新增的添加 SSL 功能
如果需要添加输入 y ,不添加输入 n 回车。
选择了添加 SSL 会提示
有两个选项,1 选项为使用自己准备好的 SSL 证书和 key。
> > 提示Please enter full path to SSL Certificate file 后输入要 SSL 证书的完整路径和文件名,回车确认。
> > 提示Please enter full path to SSL Certificate Key file:后输入输入要 key 文件的完整路径和文件名,回车确认。
2 选项为使用免费SSL证书提供商Letsencrypt的证书,自动生成SSL证书等信息。、
需要输入一个邮箱回车确认。
成功结果:
提示 Press any key to start create virtul host... 后,回车确认便会开始创建虚拟主机。
添加成功会提示添加的域名、目录、伪静态、日志、数据库、FTP等相关信息,如下图:
注:这个时候去访问你的域名,如果访问不成功,执行下面的步骤:
其中 chattr 命令 是改变文件属性,-i 后可以任意改动文件。删除后再访问你的域名,这时候便可成功访问你的域名了。
每次配置一个域名后,都要删除 .user.ini 文件,你可能会觉得麻烦。这里你可以通过访问修改“/usr/bin/lnmp”文件,即可每次都不用生成 .user.ini 文件实现。
删除 /usr/bin/lnmp 文件中的
cat >${vhostdir}/.user.ini<<EOF
open_basedir=${vhostdir}:/tmp/:/proc/
EOF
chmod 644 ${vhostdir}/.user.ini
chattr +i ${vhostdir}/.user.ini
和下面一段 出现 .user.ini 的两行代码。(这里我自己已经删除了,忘记先复制出来了)
否则你删除已经配置好的域名时,会报错
注:记住,一共有两个地方!
删除命令是 lnmp vhost del,然后会列出已经配置好的域名
再输入 admin.chengcheng.com 即可删除已经配置好的域名。
通过以上方法,你就可以正确访问你的域名了。