PHP获取请求服务器的域名

最近心血来潮搭建了一个图床,分享图床出去的同时想要对图片资源进行管控,用户会先在控制台留下自己的域名信息,选择对应图片后会生成一个调用链接,通过链接可以访问到图片,现在我想校验调用这个图片的服务器域名和用户所留的域名是否相同。用户可以在前端通过来调用图片,但是,获取到的域名是我自己的域名,也就是用户获取到的链接里面的域名,应该怎样来获取用户的域名?

  • 帮你找了个相似的问题, 你可以看下: https://ask.csdn.net/questions/7418314
  • 这篇博客也不错, 你可以看下模拟用户登录过程,验证用户名、密码和校验码,如果全部正确提示用户登录成功,否则,提示用户相关输入错误
  • 除此之外, 这篇博客: 标题创建实体类商品,包含属性:商品名称,商品价格,包含2个属性的构造函数中的 标题创建实体类商品,包含属性:商品名称,商品价格,包含2个属性的构造函数 部分也许能够解决你的问题, 你可以仔细阅读以下内容或跳转源博客中阅读:
  • 创建实体类用户,包含属性:用户名,余额,包含2个属性的构造函数
    创建实体订单,包含属性:唯一的下单用户,若干商品,包含2个属性的构造函数
    提供getter/setter方法
    创建测试类,创建主函数,在主函数中
    创建1个有余额99元的你自己
    假设:方便面,5.5元;火腿肠,2.2元
    为以上用户创建一个包含2包方便面,4根火腿肠的订单,共6个商品的订单
    创建独立的余额计算方法,
    接收订单对象,将订单中用户,购买了订单中商品后的余额,计算返回
    主函数调用余额计算方法,打印余额
    如何描述2个方便面?
    如何累加商品总价?
    注意合适的数据类型
    注意作业/实体/测试的包路径
    过滤代码格式;忽略计算的精度丢失

    class Product{
    
        String nameP;
    
        float price;
    
        Product(String x,float y){
    
            nameP=x;
    
            price=y;
    
        }
    
        float getPrice(){
    
            return price;
    
        }
    
    }
    
    class People{
    
        String name;
    
        float money;
    
        People(String x,float y){
    
            name=x;
    
            money=y;
    
        }
    
        float getMoney(){
    
            return money;
    
        }
    
        void setMoney(float m) {
    
            money = m;
    
        }
    
    }
    
    class Order{
    
        People one;
    
        int num;
    
        Product []products=new Product[100];
    
        Order(People x,int n,Product []y){
    
            one=x;
    
            num=n;
    
            products = y;
    
        }
    
        People getOne() {
    
            return one;
    
        }
    
        int getNum() {
    
            return num;
    
        }
    
        Product[] getProducts() {
    
            return products;
    
        }
    
    }
    
    
    
    public class Main {
    
            static float computer(Order order) {
    
            float money1;
    
            float money2=0;
    
            money1 = order.getOne().getMoney();
    
            for (int i = 0; i < order.getNum(); i++)
    
                money2 = money2 + order.getProducts()[i].getPrice();
    
            order.getOne().setMoney(money1-money2);
    
            return order.getOne().getMoney();
    
        }
    
    
    
        public static void main(String[] args) {
    
            People p = new People("小刘", 99);
    
            Product p1 = new Product("方便面", 5.5f);
    
            Product p2 = new Product("火腿肠", 2.2f);
    
            Product[] y = {p1, p1, p2, p2, p2, p2};
    
            Order order = new Order(p, 6, y);
    
            float money=Main.computer(order);
    
            System.out.println(money);
    
        }
    
    }
    
  • 您还可以看一下 李月喜老师的企业微信开发第三方应用开发篇课程中的 回调配置概述,回调签名验证及消息解密集成 小节, 巩固相关知识点