lnmp 删除海外虚拟主机、添加及伪静态使用教程

发布时间:2022-05-20 10:03 来源:好主机 阅读:144 作者:新网知识社区 栏目: 虚拟主机 欢迎投稿:712375056

  所谓虚拟主机,也叫“网站”,就是把一台运行在互联网上的服务器划分成多个“虚拟”的服务器,每一个虚拟主机都具有独立的和完整的Internet服务器(支持WWW、FTP、E-mail等)功能。虚拟主机是网络发展的福音,极大的促进了网络技术的应用和普及。同时租用服务也成了网络时代新的经济形式。虚拟主机的租用类似于房屋租用。海外虚拟主机是在网络服务器上划分出一定的磁盘空间供用户放置站点、应用组件等,提供必要的站点功能、数据存放和传输功能。下面就由小编和大家讲一讲lnmp 删除海外虚拟主机。

一、添加网站(虚拟主机)

  如果输入有错误需要删除时,可以按住Ctrl再按Backspace键进行删除。

  执行:lnmp vhost add出现如下界面:

  这里要输入要添加网站的域名,我们已添加www.vpser.net域名为例,如上图提示后输入域名 www.vpser.net 回车后提示

  这里询问是否添加更多域名,直接再输入要绑定的域名,这里我们将 vpser.net 也绑上,多个域名空格隔开,如不需要绑其他域名就直接回车。

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

  下面需要设置网站的目录

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

  伪静态可以使URL更加简洁也利于SEO,如程序支持并且需要设置伪静态的话,如启用输入 y ,不启用输入 n 回车(注意LNMPA或LAMP模式没有该选择项!)。

  默认已经有了discuz、discuzx、discuzx2(Discuz X二级目录)、wordpress、wp2(WordPress二级目录)、typecho、typecho2(Typecho二级目录)、sablog、emlog、dabr、phpwind、、dedecms、drupal、ecshop、shopex等常用的Nginx伪静态配置文件,可以直接输入名称进行使用,如果是二级目录则需要对应配置文件里的二级目录的名称。

  这一步是设置日志,如启用日志输入 y ,不启用输入 n 回车。

  如果启用需要再输入要设置的日志的名称,默认日志目录为:/home/wwwlogs/ 默认文件名为:域名.log 回车确认后,会询问是否添加数据库和数据库用户。

  如果需要添加数据库输入 y ,不添加数据库输入 n 回车。

  如果要添加,需要先验证MySQL的root密码(注:输入密码将不显示)

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

  提示Please enter password for mysql user 数据库名: 后输入要设置的密码,回车确认。

  如果安装了FTP服务器会询问是否添加FTP账号

  如果需要添加输入 y ,不添加输入 n 回车。

  提示Enter ftp account name: 后输入要创建的FTP账号名称,回车确认。

  提示Enter password for ftp account FTP账号: 后输入要设置的密码,回车确认。

  接下来是1.4新增的添加SSL功能

  如果需要添加输入 y ,不添加输入 n 回车。

  选择了添加SSL会提示

  有两个选项,1 选项为使用自己准备好的SSLssl/' target='_blank'>证书和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等相关信息,如下图:

  二、伪静态管理

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

  伪静态可以随时添加或删除,如果添加完虚拟主机后忘记或没有添加伪静态,可以通过修改配置文件来添加伪静态。

  虚拟主机配置文件在:/usr/local/nginx/conf/vhost/域名.conf

  伪静态规则文件需要放在/usr/local/nginx/conf/ 下面。

  编辑虚拟主机配置文件,可以使用vi、nano或winscp,后2个工具对新手来说简单些。

  例如前面我们添加的虚拟主机,打开后前半部分配置会显示如下:

  在root /home/wwwroot/www.vpser.net;这一行下面添加:

  include wordpress.conf;

  上面的wordpress.conf为伪静态文件,如需要其他伪静态文件自己创建个并上传到/usr/local/nginx/conf/ 下面并include 伪静态.conf; 加完保存,执行:/etc/init.d/nginx restart重启生效,如果报错可能是添加有误或伪静态规则有误。

  1.4及之前版本伪静态文件都在 /usr/local/nginx/conf/ 目录下

  1.5及之后版本伪静态文件都在 /usr/local/nginx/conf/rewrite 目录下

  伪静态文件名称后面带2的是二级目录的伪静态,可以根据自己需求修改里面二级目录的名称或复制为其他名字后include到虚拟主机配置文件中。

  三、上传网站程序

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

  上传网站后建议执行:chown www:www -R /path/to/dir 对网站目录进行权限设置,/path/to/dir替换为你网站目录。

  为了安全可以将一些不需要PHP运行的上传文件之类的目录去掉执行权限,参考:https://www.56dr.com/

  四、已存在虚拟主机添加ssl证书开启https

  对于已存在的虚拟主机添加https站点,可以执行:lnmp ssl add命令添加ssl证书,目前有两种方式一种是使用自备的ssl证书,二是采用Let'sEncrypt的免费证书。添加过程和前面的添加虚拟主机的过程是一样的,只是会多一项填写ssl证书和key的步骤或直接选择Let'sEncrypt自动生成证书。

  如果是1.*版本升级到1.4或更改版本的需要参考:https://www.56dr.com/

  五、列出网站(虚拟主机)

  执行:lnmp vhost list

  六、删除网站(虚拟主机)

  执行:lnmp vhost del

  删除网站会先列出当前已有虚拟主机,按提示输入要删除的虚拟主机域名 回车确认。

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

  LNMP 1.2下需要执行:chattr -i /网站目录/.user.ini 后才能删除网站目录。

  当执行chown或chmod对网站目录属主属组或权限进行操作时可能会提示chown: changing ownership of `/home/wwwroot/default/.user.ini': Operation not permitted,不需要理会,如果有强迫症可以参考前面先进行chattr -i的操作。

  使用lnmp或者wdcp建立的站点后删除站点目录无法删除,甚至已经加了root权限.

  解决办法

  运行:chattr -i /home/wwwroot/yoursite/.user.ini

  在进行删除

  chattr命令:有时候你发现用root权限都不能修改某个文件,大部分原因是曾经用chattr命令锁定该文件了。chattr命令的作用很大,通过chattr命令修改属性能够提高系统的安全性,但是它并不适合所有的目录。chattr命令不能保护/、/dev、/tmp、/var目录。lsattr命令是显示chattr命令设置的文件属性.

  七、默认网站(虚拟主机)

  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

  八、防跨目录设置

  LNMP 1.1及之前的版本使用php.ini里面,open_basedir设置

  LNMP 1.2及更高版本防跨目录功能使用.user.ini,该文件在网站根目录下,可以修改.user.ini 里面的open_basedir的值来设置限制访问的目录或删除来移除防跨目录的设置。

  .user.ini文件无法直接修改,如要修或删除需要先执行:chattr -i /网站目录/.user.ini

  可以使用winscp文件管理、vim编辑器或nano编辑器进行修改。

  删除的话rm -f /网站目录/.user.ini 就可以。

  修改完成后再执行:chattr i /网站目录/.user.ini

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

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

  LNMP 1.4上如果不想用防跨目录或者修改.user.ini的防跨目录的目录还需要将 /usr/local/nginx/conf/fastcgi.conf 里面的fastcgi_param PHP_ADMIN_VALUE "open_basedir=$document_root/:/tmp/:/proc/"; 在该行行前添加 # 或删除改行,需要重启nginx。

  LNMP 1.4上也可以直接使用lnmp1.4/tools/ 目录下的 ./remove_open_basedir_restriction.sh 进行移除。

  在Thinkphp、codeigniter、Laravel等框架下,网站目录一般是在public下,但是public下的程序要跨目录调用public上级目录下的文件,因为LNMP默认是不允许跨目录访问的,所以都是必须要将防跨目录访问的设置去掉,有时候这些框架类的程序提示500错误也可能是这个问题引起的。

  LNMPA或LAMP 模式1.2版本以上的防跨目录的设置使用的对应apache虚拟主机配置文件(lnmp管理工具添加的话文件是 /usr/local/apache/conf/vhost/域名.conf )里的php_admin_value open_basedir参数进行设置。如果不需要设置可以在前面加 # 进行注释,或自行修改目录的限制。

  重启apache生效。

  十、pathinfo设置

  LNMP上各个版本pathinfo各个版本的设置基本一样:

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

  去掉#include pathinfo.conf前面的#,把try_files $uri =404; 前面加上# 注释掉。

  1.2,1.3,1.4,1.5及以上版本,修改对应虚拟主机的配置文件(/usr/local/nginx/conf/vhost/域名.conf)

  将include enable-php.conf;替换为include enable-php-pathinfo.conf;

  1.4版本多PHP版本启用pathinfo的话,进入/usr/local/nginx/conf目录,拷贝一份enable-php-pathinfo.conf 命名为 enable-php7.2-pathinfo.conf,将 enable-php7.2.conf 文件里 fastcgi_pass这一行内容完整的复制下来替换 enable-php7.2-pathinfo.conf 文件中的 fastcgi_pass这一行 ,保存,再按前面的方法修改虚拟主机 include enable-php7.2-pathinfo.conf; 就行了,其他版本以此类推。

  1.5版本多PHP版本开启pathinfo的话,可以在lnmp vhost add 是选择启用pathinfo,如果存在多PHP版本就会提示你选择,也可以直接修改虚拟主机配置文件将include enable-php.conf; 替换为 include enable-php7.2-pathinfo.conf; 保存;修改pathinfo需要重启nginx生效。

  海外的虚拟主机,除中国大陆以外的其他国家和地区的虚拟主机,其中最常见的就是:香港虚拟主机、台湾虚拟主机、美国虚拟主机、欧洲虚拟主机,是一些站长和国际贸易公司的最佳选择。小伙伴们要想获得更多lnmp 删除海外虚拟主机的内容,请关注特网!

免责声明:本站发布的内容(图片、视频和文字)以原创、来自本网站内容采集于网络互联网转载等其它媒体和分享为主,内容观点不代表本网站立场,如侵犯了原作者的版权,请告知一经查实,将立刻删除涉嫌侵权内容,联系我们QQ:712375056,同时欢迎投稿传递力量。