LNMP添加、删除网站(虚拟主机)

一般情况下每个虚拟主机就是一个网站,网站一般通过域名进行访问。

1. 添加网站(虚拟主机)

1.1 执行:

lnmp vhost add

出现下图:
110.png
这里要输入要添加网站的域名,我们已添加www.roadslight.com域名为例,如上图提示后输入域名 www.roadslight.com 回车后提示:
112.png
这里询问是否添加更多域名,直接再输入要绑定的域名,这里我们将 roadslight.com 也绑上,多个域名空格隔开,如不需要绑其他域名就直接回车。

注:<u>带www和不带www的是不同的域名,如需带www和不带的www的域名都访问同一个网站需要同时都绑定。</u>

1.2 设置网站的目录
如图:
113.png
网站目录不存在的话会创建目录, 也可以输入已经存在的目录或要设置的目录。
<u>(注意如要输入必须是全路径即以/开头的完整路径!)</u>
不输入直接回车的话,采用默认目录:/home/wwwroot/域名

1.3 是否使用伪静态
114.png
伪静态可以使URL更加简洁也利于SEO.。

如程序支持并且需要设置伪静态的话,如启用输入 y ,不启用输入 n 回车。
<u>(注意:LNMPA或LAMP模式没有该选择项!)</u>

115.png
默认已经有了:

discuz、discuzx、discuzx2(Discuz X二级目录)、wordpress、wp2(WordPress二级目录)、typecho、typecho2(Typecho二级目录)、sablog、emlog、dabr、phpwind、、dedecms、drupal、ecshop、shopex等

常用的Nginx伪静态配置文件,可以直接输入名称进行使用,如果是二级目录则需要对应配置文件里的二级目录的名称。

1.4 设置日志

这一步是设置日志,如启用日志输入 y 回车或直接回车,不启用输入 n 回车:
116.png
如果启用需要再输入要设置的日志的名称,默认日志目录为:/home/wwwlogs/ 默认文件名为:域名.log
117.png

1.5 添加数据库

询问是否添加数据库和数据库用户, 如果需要添加数据库输入 y , 不添加数据库输入 n 回车:
这里写图片描述
如果要添加,需要先验证MySQL的root密码(注:输入密码将不显示)

提示Enter database name: 后输入要创建的数据库名称,要创建的数据库用户名会和数据库同名,回车确认。

1.6 添加FTP账号

如果安装了FTP服务器会询问是否添加FTP账号:
118.png
如果需要添加输入 y ,不添加输入 n 回车。
119.png
提示Enter ftp account name: 后输入要创建的FTP账号名称,回车确认。
提示Enter password for ftp account FTP账号: 后输入要设置的密码,回车确认。

1.7 添加SSL功能
120.png
如果需要添加输入 y ,不添加输入 n 回车。
选择了添加SSL会提示:
121.png
有两个选项,1 选项为使用自己准备好的SSL证书和key:
123.png
2 选项为使用免费SSL证书提供商Letsencrypt的证书,自动生成SSL证书等信息:
124.jpeg
需要输入一个邮箱回车确认。

1.8 创建虚拟主机

提示 Press any key to start create virtul host... 后,回车确认便会开始创建虚拟主机。

添加成功后会提示添加的域名、目录、伪静态、日志、数据库、FTP等相关信息,如下图:
125.jpeg

自此,一个新的虚拟主机创建完成。



2. 删除网站(虚拟主机)

执行:

lnmp vhost del

126.png
选择要删除的域,回车。

这样只是删除虚拟主机配置文件,网站文件并不会删除,需要自己删除。



3. 查看网站(虚拟主机)列表

执行:

lnmp vhost list

127.png



4. 伪静态管理

LNMPA或LAMP下:直接使用网站根目录下放.htaccess 来设置伪静态规则(具体规则可以去程序官网网站找google百度)。

在LNMP下:需要使用Nginx伪静态规则。

虚拟主机配置文件为:

/usr/local/nginx/conf/vhost/域名.conf

伪静态规则文件需要放在:

/usr/local/nginx/conf/wordpress.conf

伪静态文件中添加下面的代码:

if (-f $request_filename/index.html){
rewrite (.*) $1/index.html break;
}
if (-f $request_filename/index.php){
rewrite (.*) $1/index.php;
}
if (!-f $request_filename){
rewrite (.*) /index.php;
}

编辑虚拟主机配置文件,可以使用vi、nano或winscp,网上说后2个工具对新手来说简单些,但是我由于用的Mac,无法使用winscp,所以一直都是直接用的vi来配置修改。
( vi 进入后默认为只读,按 i 进入编辑状态,按 esc 退出编辑状态,按 shift+两次 z 退出vi )

例如前面我们添加的虚拟主机,执行:

vi /usr/local/nginx/conf/vhost/www.roadslight.conf

打开后前半部分配置会显示如下:
128.png

root /home/wwwroot/www.vpser.net;

这一行下面添加:

include wordpress.conf;

129.png
上面的wordpress.conf为伪静态文件。
如需要其他伪静态文件自己创建个并上传到/usr/local/nginx/conf/ 下面并include 伪静态.conf;

加完保存,执行:/etc/init.d/nginx restart 重启生效,如果报错可能是添加有误或伪静态规则有误。
130.png
伪静态可以随时添加或删除,如果添加完虚拟主机后忘记或没有添加伪静态,可以通过修改配置文件来添加伪静态。



5. 上传网站程序

如果已经安装FTP服务器可以直接使用ftp客户端通过你的FTP信息登录后上传网站或sftp等软件上传网站,设置好相关权限开始安装即可。

上传网站后建议执行:

chown www:www -R /home/www 

对网站目录进行权限设置,/home/www 替换为你网站目录。



6. 防跨目录设置

在网站根目录下,可以修改 .user.ini 里面的 open_basedir 的值来设置限制访问的目录或删除来移除防跨目录的设置。
.user.ini 文件无法直接修改,如要修或删除需要先执行:

chattr -i /网站目录/.user.ini

删除的话,执行:

rm -f /网站目录/.user.ini 

修改完成后再执行:

chattr +i /网站目录/.user.ini

.user.ini 不需要重启一般5分钟左右生效,也可以重启一下php-fpm立即生效。

如果要更改网站目录必须要按上述方法修改防跨目录的设置,否则肯定报错!!!



7. pathinfo设置

修改对应虚拟主机的配置文件(/usr/local/nginx/conf/vhost/域名.conf)

include enable-php.conf;

替换为

include enable-php-pathinfo.conf;

131.png
修改pathinfo需要重启nginx生效:

service nginx restart



8. 已存在虚拟主机添加ssl证书开启https

对于已存在的虚拟主机添加https站点,可以执行:

lnmp ssl add 

命令添加ssl证书。
目前有两种方式:
<li> 一种是使用自备的ssl证书,
<li> 二是采用Let'sEncrypt的免费证书。

添加过程和前面的添加虚拟主机的过程是一样的,只是会多一项填写ssl证书和key的步骤或直接选择Let'sEncrypt自动生成证书。



9. 数据库管理

可以在添加虚拟主机时选择创建数据库,也可以单独使用

lnmp database add 

按提示添加数据库,添加的用户名和数据库名是同名的。

添加数据库命令:

lnmp database add

编辑数据库用户密码命令:

lnmp database edit

删除数据库命令:

lnmp database del

列出所有数据库命令:

lnmp database list



10. 默认网站(虚拟主机)

LNMP默认网站配置文件:

/usr/local/nginx/conf/nginx.conf

LNMPA默认网站配置文件:

/usr/local/nginx/conf/nginx.conf

/usr/local/apache/conf/extra/httpd-vhosts.conf

LAMP默认网站配置文件:

/usr/local/apache/conf/extra/httpd-vhosts.conf

Last modification:March 17th, 2018 at 10:17 am
If you think my article is useful to you, please feel free to appreciate