dede使用lnmp绑定二级域名二级目录

  • A+
所属分类:环境配置

环境说明

  • centos 7.2 64位
  • lnmp 1.4测试
  • dedecms 最新版

实现说明

使用lnmp实现二级域名访问二级目录,简单?如果你是二级目录又是额外的一个网站,那么这个真的是简单,但如果你的二级目录只是网站的一个分支,那就不简单了。

dede移动端我一直都用二级域名去搞的,因为如果是做二级目录很多搜索引擎支持的不好,所以没办法,只能去解决。

如果按照常规的操作,新增一个二级目录的网站,只需要绑定那个目录的地址就可以了。

如果是dede会出现:/install/index.php,因为在index.php文件里面有这么一段。

  1. if(!file_exists(dirname(__FILE__).'/../data/common.inc.php'))
  2. {
  3.     header('Location:install/index.php');
  4.     exit();
  5. }

所以答案已经出来了,就是如何访问到上一层的目录,也称之为:跨目录

跨目录解决方案

  • 在官方的内容中:LNMP 1.2及更高版本防跨目录功能使用.user.ini,该文件在网站根目录下,可以修改open_basedir的值来设置限制目录的访问。
  • 那就直接去修改文件,user.ini
  • 如要修或删除需要先执行:chattr -i /网站目录/.user.ini
  • 进入当下目录(也可以不进入) vim  .user.in(vim /home/wwwroot/域名/.user.in),不知道怎么保存,怎么退出了吧?(先按i,编辑完成后:wq
  • open_basedir=/home/wwwroot/域名:/tmp/:/proc/  (修改其文件夹位置)
  • 修改完成后再执行:chattr +i /网站目录/.user.ini
  • .user.ini不需要重启一般5分钟左右生效,也可以重启一下php-fpm立即生效。

附:

前面几步做完后,发现没反应,然后发现自己是1.4的,然后根据下面的内容完成。

LNMP 1.4上如果不想用防跨目录还需要将 /usr/local/nginx/conf/fastcgi.conf 里面的fastcgi_param PHP_ADMIN_VALUE "open_basedir=$document_root/:/tmp/:/proc/"; 删除,需要重启nginx。

 

资料来源:https://lnmp.org/faq/lnmp-vhost-add-howto.html#user.ini

李金龙

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: