php 获取url地址中的一级域名、顶级域名的方法 3年前 2.6K

在WordPress主题开发中经常需要获取url地址中的一级域名或者顶级域名,特别是在需要验证权限时这个功能就非常重要,虽然php内置了很多超全局变量,但是不能让我们轻易的获取到顶级域名,下面我们可以通过自定义函数的方式来截取到我们需要的。/***获取顶级域名**@paramstring$url域名HOST,如:www.51dev.com*@returnstring顶级域名如:51dev.com*/functionurl_root($url=""){$url=$url?$url:$_SERVER["HTTP_HOST"];$dual_host=array('aaa.pro','ac.cn','ac.kr','ac.mu','aca.pro','acct.pro','ae.org','ah.cn','ar.com','avocat.pro','bar.pro','biz.ki','biz.pl','bj.cn','br.com','busan.kr','chungbuk.kr','chungnam.kr','club.tw','cn.com','co.ag','co.am','co.at...

Nginx安装与配置文件解析

简单安装本教程一Centos6.3为例讲解,软件包可以在官方网站下载,编译安装之前,我们需要使用YUM提前将所需的软件依赖包安装完成。安装命令如下:[root@centos6~]#wgethttp://nginx.org/download/nginx-1.4.0.tar.gz[root@centos6~]#tar-xzfnginx-1.4.0.tar.gz-C/usr/src[root@centos6~]#yum-yinstallgccpcrepcre-developenssl>openssl-develgdgd-develperlperl-ExtUtils-Embed[root@centos6~]#cd/usr/src/nginx-1.4.0/[root@centos6nginx-1.4.0]#./configure--prefix=/usr/local/nginx>--with-ipv6>--with-http_ssl_module>--with-http_realip_module>--with-http_addition_module>--w...

各种软件系统架构图解析

发布一企业技术架构图,供大家参考。  该技术架构图是本人根据多年企业技术架构经验而制定,是企业技术的总架构图,希望对CTO们有所借鉴。 简单说明:1.中间件基础运行环境是经过统一规划的以WebLogic、JBOSS为主的集群环境                            2.企业集成平台是以基础业务应用为基础服务于上层平台和基础业务应用的高度集成平台         3.数据中心是企业公共数据的集中管理比如用户数据、企业编码,可以通过数据集成平台或服务集成平台分发给其他应用     项目做了不少,都没画过架构图,这次被要求画图,画的...

阿里云DNS修改和域名解析的区别

DNS修改和域名解析的含义完全不同:1、DNS修改是指域名解析服务器(DomainNameSystem)的修改。如果您自己有独立DNS服务器,想通过此DNS解析已注册成功的域名,您可选择DNS修改业务(注:要改DNS的域名必须是在注册商注册或已成功转入至注册商的域名),请您登陆域名管理区-点击相应域名-DNS修改处修改您的域名DNS信息2、域名解析:域名与IP地址之间是一一对应的,它们之间的转换工作称为域名解析,域名解析需要由专门的域名解析服务器(DNS)来完成。...

idea 一直卡在maven正在解析maven依赖

修改mavenImporting的jvm参数-Xms1024m-Xmx2048m...

PHP实现域名授权的两种方法

01. 在线校验域名授权的方法:客户端代码:<?php//获取不带端口号的域名前缀$servername=trim($_SERVER['SERVER_NAME']);//获取服务端授权文件校验$verifyurl=file_get_contents('API接口'.$servername);if(!empty($verifyurl)){echo"已授权!";//授权成功}else{die("未授权!");//授权失败}?>服务端代码:<?php//获取域名$domain=$_GET['domain'];//授权域名列表$Array=array('127.0.0.1','localhost');//校验结果echoin_array($domain,$Array)?'yes':'';?>域名授权代码可封装进函数,或者进行加密,如果授权的域名较多,可以在项目中增加域名字段,将域名写入数据库再进行读取和校验。02. 独立校验域名授权的方法:<?phpFunctionallow_domain(){$is_allow=false;//获取不带端口号...

Spring Security权限管理实现接口动态权限控制

下面就是关于“SpringSecurity权限管理实现接口动态权限控制”的完整攻略:在SpringSecurity中,我们可以使用基于注解的安全性,以控制方法响应、请求类型等。但是,如果我们需要跟具体的业务数据绑定的话,我们就需要根据规则来控制具体的访问权限。在这种情况下,就需要使用SpringSecurity提供的“动态授权”功能了。本文将介绍如何使用动态授权功能来精细管理用户权限。SpringSecurity中的动态授权,是通过实现权限控制的接口来达到的。主要通过实现AccessDecisionManager接口和AccessDecisionVoter接口来实现。AccessDecisionManager接口提供了访问决策,它用于限定某个Subject允许访问哪种资源。AccessDecisionVoter接口是AccessDecisionManager的一个具体实现。它可以进行“投票”,来判断是否允许访问某个资源。下面是具体的实现步骤:3.1.定义自定义权限管理器首先,在项目中定义一个自定义的权限管理器,在这...

layui动态赋值select下拉框

$.ajax({url:"/EnvironmentMonitor/GetAnalogSensor",type:"GET",dataType:"json",data:{mineCode:data.value,},success:function(data){if(data.code==0){if(data.count==0){layer.msg("当前煤矿没有传感器类型!")}else{for(vari=0;i<data.data.length;i++){$("#equcode").append("<optionvalue="+data.data[i].Value+">"+data.data[i].Text+"</option>")}//需要渲染一下form.render();}}},error:function(){console.log("error")}}); ...

linux下sqlite如何制作成动态库库

1、下载源码,解压缩sqlite-autoconf-3300100.tar.gz 2、进入解压目录,执行:#:./configure--host=armCC=arm-linux-gnueabi-gccCXX=arm-linux-gnueabi-g++--prefix=/usr其中--host=要运行程序的主机CC/CXX为用到的交叉编译工具链--prefix=安装目录3、make将在当前文件目录下,自动生成可执行文件sqlite3及静态库文件sqlite3.a文件;4、sudomakeinstall此命令会将可执行文件及静态库文件拷贝至安装目录中(也可手动拷贝)5、以上步骤生成的可执行文件包含大量调试信息,文件比较大,可使用strip命令去掉其中的调试信息;#:arm-linux-gnueabi-stripsqlite36、生成动态库文件:arm-linux-gnueabi-gccsqlite3.c-lpthread-ldl-fPIC-shared-olibsqlite3.so交叉编译sqlite3,生成动态库标签:refgcchostpthreadstripconfig安装...

用 xmlNode 解析 XML 时,注意注释

XML中的注释,其实也是一个xmlNode。这个注释形成的xmlNode,其 xmlNode.Attributes为null。所以我们要注意,当向XML中添加注释时,是否会影响程序的运行。...

C# 动态数组

C#是没有动态数组的,要实现动态数组的功能,请使用Array、ArrayList、List。但C#3.0中确实有一种情况是不需要指定数组长度的,如下的代码,int[]中括号中并没有指定长度,而是在后面大括号中指定了三个数值,这三个数值表示数组有三项,这三项的值分别是:1、4、7。int[]arr=newint[]{1,4,7};...
代码星球 代码星球·2023-04-16

C# 正则表达式解析 [3,7) 这种带括号的字符串

usingSystem.Text.RegularExpressions;Matchmatch=Regex.Match("[3,7)",@"^([|()(.*),(.*)()|])$");//要进一步限定括号中的只能是数字,则可以替换.*为d*。if(match.Success){stringstr="";for(inti=0;i<match.Groups.Count;i++){str+=""+i+":"+match.Groups[i].Value;}MessageBox.Show(str);}显示结果为:0:[3,7)1:[2:33:74:)正则表达式中,用作转义符,将括号转义为普通字符,用Regex.Match匹配,若结果为Success则匹配成功,再用Groups[i].Value取出括号匹配的各项值。用^、$限定了行的开头和结尾,即头尾要完全匹配,并不是说只匹配字符串其中的一部分。当然,如果要进一步限定括号中的只能是数字,则可以替换.*为d*。相关阅读白话解释正则表达式中参数g、m、i的作用涉及正则表达式验证字符串长度时别忘了^、$正则表达式匹配次-懒惰匹配...

nginx 如何绑定域名

nginx绑定域名方法很简单,只要在nginx中vhost中加入vhost然后把server_name写上你的域名就实现域名绑定了。1、首先打开nginx域名配置文件存放目录:/usr/local/nginx/conf/vhost,如要绑定域名 lx.vxiaoxiao.cn 则在此目录建一个文件:lx.vxiaoxiao.cn.conf然后在此文件中写规则,如:server  {    listen80;    #listen[::]:80;    server_namelx.vxiaoxiao.cn;    indexindex.htmlindex.php;    root /www/lx.vxiaoxiao.cn;    includenone.conf;   &n...
开发笔记 开发笔记·2023-03-25

表达式树+反射实现动态排序。List动态排序,集合动态排序

比如要点击表头进行排序,排序的字段比如多,一个一个判断去写就比较麻烦。判断就太多了,如果其他地方也要用排序重复代码就会很多,类似这种。if(sort.ToLower()=="max"){if(sortway=="asc"){query=query.OrderBy(a=>a.Max);}else{query=query.OrderByDescending(a=>a.Max);}}if(sort.ToLower()=="min"){if(sortway=="asc"){query=query.OrderBy(a=>a.Min);}else{query=query.OrderByDescending(a=>a.Min);}}if(sort.ToLower()=="sum"){if(sortway=="asc"){query=query.OrderBy(a=>a.Min);}else{query=query.OrderByDescending(a=>a.Min);}}所以我们封装一下通用的排序方法usingSystem;usingSystem.Collect...

微信小程序域名被封如何申诉解封

1、明确非法地址在申请之前,我们首先要明确非法地址并完成溯源,找到根本原因并解决问题。点击页面提示拦截最底部的申请恢复访问,随后会出现相应的违法地址列表,复制查看并解决。2、申诉入口1)直接到腾讯安全中心平台申诉,把申诉地址复制上去提交即可。平台地址:https://urlsec.qq.com/complain.html2)如果上面申诉无效,可以直接发邮箱给腾讯处理。收件人:momenttencent.com发送标题:域名解封xxx.com邮件内容:描述清楚什么原因导致,目前解决进度情况等。...
首页上一页12345...下一页尾页