前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >如何在Ubuntu 18.04上使用mod_rewrite for Apache重写URL

如何在Ubuntu 18.04上使用mod_rewrite for Apache重写URL

原创
作者头像
水门
修改于 2018-10-22 03:34:47
修改于 2018-10-22 03:34:47
4.8K00
代码可运行
举报
运行总次数:0
代码可运行

介绍

Apache的mod_rewrite模块允许您以更干净的方式重写URL,将人类可读的路径转换为代码友好的查询字符串。它还允许您根据条件重写URL。

使用.htaccess文件可以创建和应用重写规则,而无需访问服务器配置文件。通过将.htaccess文件放在网站的根目录中,您可以基于每个站点或每个目录管理重写。

在本教程中,您将启用mod_rewrite并使用.htaccess文件来创建基本URL重定向,然后探索几个高级用例。

先决条件

要学习本教程,您需要:

  • 一个Ubuntu 18.04服务器,没有服务器的同学可以在这里购买,不过我个人更推荐您使用免费的腾讯云开发者实验室进行试验,学会安装后再购买服务器
  • 一个具有sudo权限的非root用户,并且在您的服务器上启用防火墙,如果您使用的是腾讯云的CVM服务器,您可以直接在腾讯云控制台中的安全组进行设置。
  • 安装Apache。

第1步 - 启用mod_rewrite

为了让Apache了解重写规则,我们首先需要激活mod_rewrite。它已经安装,但在默认的Apache安装上被禁用。使用该a2enmod命令启用模块:

代码语言:javascript
代码运行次数:0
运行
复制
sudo a2enmod rewrite

这将激活模块或提醒您模块已启用。要使这些更改生效,请重新启动Apache。

代码语言:javascript
代码运行次数:0
运行
复制
sudo systemctl restart apache2

mod_rewrite现已完全启用。在下一步中,我们将设置一个.htaccess文件,我们将用它来定义重定向的重写规则。

第2步 - 设置.htaccess

一个.htaccess文件,允许我们修改我们的重写规则,而无需访问服务器配置文件。因此,.htaccess对Web应用程序的安全性至关重要。文件名之前的句点可确保隐藏文件。

注意:您可以将任何放在.htaccess文件中的规则也可以直接放入服务器配置文件中。实际上,正式的Apache文档建议使用服务器配置文件,而不是用.htaccess来配置,因为Apache可以用这种方式更快地处理它。

但是,在这个简单的例子中,性能提升可以忽略不计。此外,在.htaccess中设置规则很方便,尤其是在同一服务器上有多个网站。它不需要服务器重新启动即可使更改生效,并且不需要root权限即可编辑这些规则,从而简化维护并使用非特权帐户进行更改。一些流行的开源软件,如Wordpress和Joomla,通常依赖.htaccess文件来使软件文件来修改和创建额外的按需规则。

在开始使用.htaccess文件之前,您需要设置并保护更多设置。

默认情况下,Apache禁止使用.htaccess文件来应用重写规则,因此首先需要允许更改文件。使用nano或您喜欢的文本编辑器打开默认的Apache配置文件。

代码语言:javascript
代码运行次数:0
运行
复制
sudo nano /etc/apache2/sites-available/000-default.conf

在该文件中,您将在第一行找到一个<VirtualHost *:80>块。在该块的内部,添加以下新块,以使您的配置文件如下所示。确保所有块都正确缩进。

代码语言:javascript
代码运行次数:0
运行
复制
<VirtualHost *:80>
    <Directory /var/www/html>
        Options Indexes FollowSymLinks MultiViews
        AllowOverride All
        Require all granted
    </Directory>. . .
</VirtualHost>

保存并关闭文件。要使这些更改生效,请重新启动Apache。

代码语言:javascript
代码运行次数:0
运行
复制
sudo systemctl restart apache2

现在,在Web根目录中创建一个.htaccess文件。

代码语言:javascript
代码运行次数:0
运行
复制
sudo nano /var/www/html/.htaccess

在新文件的顶部添加此行以激活重写引擎。

代码语言:javascript
代码运行次数:0
运行
复制
RewriteEngine on

保存文件并退出。

您现在拥有一个可用于管理Web应用程序路由规则的.htaccess操作文件。在下一步中,我们将创建示例网站文件,我们将使用它们来演示重写规则。

第3步 - 配置URL重写

在这里,我们将设置一个基本的URL重写,将漂亮的URL转换为实际的页面路径。具体来说,我们将允许用户访问http://your_server_ip/about,但显示一个名为about.html的页面。

首先在Web根目录中创建一个名为about.html的文件。

代码语言:javascript
代码运行次数:0
运行
复制
sudo nano /var/www/html/about.html

将以下HTML代码复制到该文件中,然后保存并关闭它。

代码语言:javascript
代码运行次数:0
运行
复制
<html>
    <head>
        <title>About Us</title>
    </head>
    <body>
        <h1>About Us</h1>
    </body>
</html>

您可以通过http://your_server_ip/about.html来访问此页面,但请注意,如果您尝试访问http://your_server_ip/about``/about,则会看到404 Not Found错误。要使用相反的方式访问页面,我们将创建一个重写规则。

所有的RewriteRules都应遵循以下格式:

代码语言:javascript
代码运行次数:0
运行
复制
RewriteRule pattern substitution [flags]
  • RewriteRule 指定指令。
  • pattern是一个正则表达式,匹配URL中所需的字符串,这是查看器在浏览器中键入的内容。
  • substitution 是实际URL的路径,即文件Apache服务器的路径。
  • flags 是可以修改规则工作方式的可选参数。

让我们创建我们的URL重写规则。打开.htaccess文件。

代码语言:javascript
代码运行次数:0
运行
复制
sudo nano /var/www/html/.htaccess

在第一行之后,添加标记为红色的RewriteRule并保存文件。

代码语言:javascript
代码运行次数:0
运行
复制
RewriteEngine on
RewriteRule ^about$ about.html [NC]

在这种情况下,^about$是模板,about.html是替换,同时[NC]是标志。我们的示例使用了一些具有特殊含义的字符:

  • ^表示your_server_ip/之后的URL的开头。
  • $ 表示URL的结尾。
  • about 匹配字符串“about”。
  • about.html 是用户访问的实际文件。
  • [NC] 是一个使规则不区分大小写的标志。

您现在可以在浏览器中访问http://your_server_ip/about。事实上,根据上面显示的规则,以下网址将指向:about.html

  • http://your_server_ip/about,因为规则的定义。
  • http://your_server_ip/About,因为规则不区分大小写。
  • http://your_server_ip/about.html,因为原始的正确文件名将始终有效。

但是,以下内容不起作用:

  • http://your_server_ip/about/,因为规则明确规定about之后可能没有任何内容,因为$角色出现在about之后。
  • http://your_server_ip/contact,因为它与规则中about的字符串不匹配。

您现在拥有一个带有基本规则的.htaccess操作文件,您可以根据自己的需要进行修改和扩展。在以下部分中,我们将展示常用指令的另外两个示例。

示例1 - 使用RewriteRule简化查询字符串

Web应用程序通常使用查询字符串,这些字符串在地址后使用问号(?)附加到URL 。使用&符号(&)分隔单独的参数。查询字符串可用于在各个应用程序页面之间传递附加数据。

例如,用PHP编写的搜索结果页面可能使用类似的URL http://example.com/results.php?item=shirt&season=summer。在此示例中,将两个附加参数传递给虚构的result.php的值为使用值shirt应用程序脚本item,和值为 summer的应用程序脚本season。应用程序可以使用查询字符串信息为访问者构建正确的页面。

Apache重写规则通常用于将如上所述的长而不愉快的链接简化为友好的URL,这些URL更易于在视觉上进行打字和解释。在这个例子中,我们想将上面的链接简化为http://example.com/shirt/summer。并且让shirtsummer参数值仍然存在,但没有查询字符串和脚本名称。

以下是实现此目的的一条规则:

代码语言:javascript
代码运行次数:0
运行
复制
RewriteRule ^shirt/summer$ results.php?item=shirt&season=summer [QSA]

shirt/summer在请求的地址被明确的匹配而且Apache被告知去服务results.php?item=shirt&season=summer

[QSA]标志在重写规则经常被用到。它们告诉Apache将任何其他查询字符串附加到提供的URL,因此如果访问者输入http://example.com/shirt/summer?page=2,服务器将用该地址results.php?item=shirt&season=summer&page=2来响应。如果没有它,额外的查询字符串将被丢弃。

虽然此方法可实现所需效果,但项目名称和季节都硬编码到规则中。这意味着该规则不适用于任何其他items,比如pants,或seasons,比如winter

为了使规则更通用,我们可以使用正则表达式匹配原始地址的各个部分,并在替换模式中使用这些部分。修改后的规则将如下所示:

代码语言:javascript
代码运行次数:0
运行
复制
RewriteRule ^([A-Za-z0-9]+)/(summer|winter|fall|spring) results.php?item=$1&season=$2 [QSA]

括号中的第一正则表达式组与包含字母数字字符,例如shirtpants,和数字等的字符串相匹配并将匹配片段保存为$1变量。括号中的第二正则表达式组与summerwinterfall,或spring完全匹配并且类似的将匹配保存为$2变量。

然后将匹配的片段用于生成的URL中的 itemseason变量,而不是使用之前的硬编码的shirtsummer的值。

例如,上面将把http://example.com/pants/summer转换为http://example.com/results.php?item=pants&season=summer。此示例也是也是具有前瞻性的,允许使用单个规则正确地重写多个项目和季节。

示例2 - 使用RewriteConds添加逻辑条件

重写规则不一定总是逐个评估,没有任何限制。该RewriteCond指令允许我们为重写规则添加条件,以控制何时处理规则。全部RewriteConds应该遵守以下格式:

代码语言:javascript
代码运行次数:0
运行
复制
RewriteCond TestString Condition [Flags]
  • RewriteCond指定RewriteCond指令。
  • TestString 是要测试的字符串。
  • Condition 是匹配的模式或条件。
  • Flags 是可选参数,可以修改条件和评估规则。

如果RewriteCond评估为true,则将考虑紧随其后的RewriteRule。如果不相关,则该规则将被丢弃。多个RewriteCond可可以一个接一个的使用,并且,对于默认行为,所有的值都必须为true,才能考虑下面的规则。

例如,假设您希望将所有请求重定向到您站点上不存在的文件或目录,并将其重定向到主页,而不是显示标准的404 Not Found错误页面。这可以通过以下条件规则来实现:

代码语言:javascript
代码运行次数:0
运行
复制
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /

有了上述:

  • %{REQUEST_FILENAME}是要检查的字符串。在这种情况下,它是请求的文件名,它是可用于每个请求的系统变量。
  • -f是一个内置条件,它验证所请求的名称是否存在于磁盘上并且是一个文件。该!是一个否定运算符。合并后,!-f仅当指定的名称不存在或不是文件时才计算结果为true。
  • 同样,仅当指定的名称不存在或不是目录时,!-d的评估结果才为true。

在最终线的RewriteRule只为=有当请求不存在的文件或目录时才将生效。该RewriteRule本身非常简单,并且可以将每个请求重定向到/网站的根目录。

结论

mod_rewrite允许您创建人类可读的URL。在本教程中,您学习了如何使用该RewriteRule指令重定向URL,包括具有查询字符串的URL。您还学习了如何使用该RewriteCond指令有条件地重定向URL 。

更多Ubuntu 教程请前往腾讯云+社区学习更多知识。


参考文献:《How to Rewrite URLs with mod_rewrite for Apache on Ubuntu 18.04》

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
暂无评论
推荐阅读
物联卡和普通流量卡的区别
物联网的发展带动了许多相关产业的发展。比如汽车联网、智能农业、智能城市、智能穿戴、智能物联网等行业对物联网卡的需求也在增加,物联卡只用于5G设备终端,只能传输网络信号,不能打电话,发短信等功能而普通流量卡则可以用于手机等设备,可以使用微信等聊天工具。
善睐物联
2022/10/20
6.4K0
黑产大数据:手机黑卡调查
手机黑卡似乎和大众没什么关系,但据说见过下面这张图的同学,每天的生活品质能提升30%。 楔子 言归正传,作为一家严肃的安全公司,其实猎人君是来尝试解决这类问题的。 作为老板,你是否发现搞活动时用户热火
FB客服
2018/02/28
9.4K0
黑产大数据:手机黑卡调查
【基于蜂窝网络的物联网开发】你需要了解的若干关于物联网卡的常规知识
XXX的物联网服务,提供包括模组、物联网卡、管理平台、资费套餐等服务,支持国内外运营商,接口统一,接入便捷,一站式解决客户的用卡需求。
架构师李肯
2022/12/08
2K0
【基于蜂窝网络的物联网开发】你需要了解的若干关于物联网卡的常规知识
手机卡套餐那么多,哪个最适合你?一招教你轻松选
小程序体验师:平鹏鹏 时代在进步,网络也在进步,从 web 1.0 到现在的 web 3.0 时代,手机网速从 2G 到现在的 4G 时代,而今,5G 时代也即将来临。 一直以来,运营商的套餐资费都始终牵动着我们普通用户的神经。对比、分析,在无数种障碍中努力寻找一种适合自己的套餐资费。然而到头来,却不得不承认一个事实:所有的手机套餐都很贵。 今天,知晓程序要给你推荐的这个「套餐助手」小程序或许就能帮你终结这个难题。 关注「知晓程序」公众号,微信后台回复「0109」,一张图教你玩转小程序。 1. 使用量设置
知晓君
2018/07/04
7690
科普| 物联网卡最全介绍(一)
1.1 什么是物联卡业务? 答:物联卡业务是中国移动为物联网用户提供的通信服务。它基于物联网专网,采用物联网专属号段,通过专用网元设备支持短信、无线数据通信、语音等基础通信服务,并提供通信状态管理和通信鉴权等智能通道服务,默认开通物联网专用的短信接入服务号和物联网通用 APN。 1.2 物联卡专属号段有哪些? 答: (一)语音号段:14764~14766、18490~18499、17892~17894、17240~17249、17290~17299、17210~17219、17220~17222 等号段为 11 位号码,总容量为 4900 万,支持短信、无线数据通信和语音 (二)非语音号段:10647、10648、14400、14401 号段为 13 位号码,总容量为 4 亿,支持短信、无线数据通信,不支持语音。 1.3 物联卡业务有哪些功能? 答:物联卡业务功能主要包括基础通信服务和智能通道服务。其中,基础通信服务包括提供短信、无线数据通信(2G/3G/4G/NB-IoT)和语音服务。智能通道服务主要包括连接管理能力、API 能力接口、位置定位、静态 IP 地址等基于物联卡的各项增值服务。各项详细的服务介绍如下: 1.3.1 短信 仅支持物联卡与业务平台进行短信通信,不支持物联卡之间及物联卡与手机卡之间的点对点短信通信。 1.3.2 无线数据通信 为物联网终端提供无线数据通信服务(包括 2G/3G/4G/NB-IoT),支持全网通用 APN或专用APN 。其中,通用 APN分为: CMMTM(支持 2/3G), CMIOT(支持 2/3/4G),CMNBIOT(支持 NB-IoT)等。 1.3.3 语音 支持主叫、被叫。 1.3.4 物联网连接管理平台 连接管理平台 物联卡连接管理平台是配合物联卡为物联网行业客户提供智能管道解决方案,为客户提供业务运营能力、应用集成能力、国际业务拓展能力、NB-IoT 能力及安全防护能力。 1.3.5 中移物联卡公众号 中移物联卡公众号为用户提供基本信息查询、卡管理、卡实名登记、个人业务充值缴费等功能。 1.3.6 API 能力接口 API 是中移物联网公司提供给企业客户的一套开放能力,通过使用不同 API,企业客户可以主动获取物联卡相关的资源信息,如:查询用户的账户余额信息、短信使用信息、码号信息、流量池信息、位置信息等。 用户可通过订购 API 套餐的方式进行 API 的调用。 1.3.7 静态 IP 地址 是指面向申请了专用 APN 的企业客户,提供终端静态 IP 地址分配,终端分配的 IP 地址为静态内网地址。 1.4 物联卡实名登记 通过“中移物联卡”公众号,用户可通过实名登记功能,将物联卡绑定至使用人。绑定之后即可查询物联卡的余额、套餐或为物联卡进行充值。 1.5 物联卡支持专用 APN 吗? 答:物联卡支持通用 APN 或专用 APN。其中,通用 APN 分为:CMMTM(支持 2/3G),CMIOT(支持 2/3/4G),CMNBIOT(支持 NB-IoT)等。 1.6 物联卡支持静态 IP 吗? 答:支持。但只有申请专用 APN 才能使用静态 IP 功能。 1.7 物联卡支持点对点数据通信吗? 答:不支持。物联卡只支持终端到平台和平台到终端的数据通信功能,不支持两台终端直接互访。 1.8 物联卡支持点对点短信吗? 答:不支持,物联卡只支持终端到平台和平台到终端的短信功能,不支持点对点短信。 1.9 物联卡支持 4G 吗? 答:物联卡可支持 2G/3G/4G/NB-IoT 网络,可根据需要向移动公司申请开通。 1.10 物联卡流量是否可以共享? 答:可以,目前支持两种流量共享实现方式:流量共享(月包模式)和流量池。1、流量共享,企业订购流量共享商品形成流量共享池,然后将多张卡加入池中,卡本身不订购套餐,共享池大小为:有效群成员数*流量共享商品对应的免费资源量。其中,有效群成员是指成员在进入流量池后曾触发过已激活状态并且当前仍处于流量池中。2、流量池,企业订购流量池商品,可以将多张卡绑定到流量池中使用流量池的流量,卡本身订购流量池功能费即可,流量池使用没有上限。 1.11 流量共享(月包模式)的总资源大小如何计算? 答:流量共享池资源形成,会将该企业客户下符合“流量共享规则”成员的套餐流量合并后计算在一起,随即形成总的流量共享池资源。 1.12 停机、挂失等非正常状态的成员能否共享流量到流量共享池? 答:不能。流量共享成员的用户状态必须为已激活。 1.13 状态为测试期、库存、待激活的成员加入流量共享池时其流量是否可进行流量共享? 答:不能。必须处于正常计费期且已生效套餐符合“流量池共享规则”的成员,其流量可共享到流量池,测试期成员只能使用自身的测试期套餐,超出部分按标准资费计费。 1.14 状态为停机、预销户或销户的成员
目的地-Destination
2023/10/12
2.9K0
中国电信物联网卡有多强大?
善睐物联于2016年成立位于深圳,专注于安防行业应用,是集视频处理和物联通讯技术为一体的创新型物联网平台。致力于不断提升物联通讯技术,提供通信硬件设备、通信模组、数据流量及物联网综合管理平台等产品整合与技术支撑服务。
善睐物联
2022/12/30
1.8K0
中国电信物联网卡有多强大?
OTT当道 运营商该如何应对?
导读:微信“电话本”以及中国移动“融合通信”标识着中国通信业在2014年底进入“全流量时代”。全流量竞争,运营商准备好了吗? 一、2014年三季度财报与微信电话本 2014年10月21日,中国移动三季度财报发布了,营收同比增长3.9%,比上年进一步走低。短信业务量加速下滑,2014年前三季度比去年同期下降20%,而2013年比2012年仅下降1.4%。总通话分钟第一次下降(通话费第一次同比下降在2013年上半年),同比下降0.3%,而去年同期同比增长3.1%。,不用去查微信同期的用
用户1756920
2018/06/20
1.2K0
用大数据扒一扒手机黑卡 | Alfred数据室
我们知道,当我们换了一个新的手机号码之后,可以得到各种网站上针对新注册用户的优惠,比如外卖新用户满20减15,共享单车新注册用户30天免费骑等,有些平台的新注册用户还直接返现。
Alfred数据室
2020/08/09
5.8K0
掌握未来通信技术:5G核心网基础入门
核心网是移动通信网络的大脑,负责对整个网络进行管理和控制。核心网是很多网元设备的统称,并非特指一种网元设备
用户11029103
2024/04/25
3.7K0
掌握未来通信技术:5G核心网基础入门
微信和这个外国公司搞了波合作,要成为你出国旅游「永不失联」的秘密武器
每天,我们坐着同一趟地铁,前往着同一个目的地,在街边随手买上同一份早餐,走进同一个格子间。
知晓君
2018/07/26
6210
解锁如何有效提高智能物联网网关 工业4G路由器网速
只要是网速变慢或者断网都是4G无线路由器的问题?有WiFi信号还是不能上网是4G无线路由器的问题?不!这锅咱物联网网关 工业4G无线路由器不背。小编和大家一起盘点解锁解锁如何有效提高智能物联网网关 工业4G路由器网速?
博晶网络科技
2021/11/27
2.2K0
不偷手机,照样隔空盗取验证码!
这段时间,相信大家看了不少关于“手机设置SIM卡密码”的安全提示新闻,但设置了SIM卡密码,其实也只是防止手机丢失情况下对方使用你的手机卡来接收短信验证码。对于短信验证码的安全窃取,犯罪分子还有一种更高超的犯罪手法,只需要在你们小区附近,就可以远程盗取验证码。真是防火防盗防“老王”,防不胜防。
FB客服
2020/11/06
5.1K0
不偷手机,照样隔空盗取验证码!
上网慢!经常掉线!怎么办?
这个时候,能否提供令人满意的回答,能否顺利解决问题,直接影响了我们在亲友心目中的“专业形象”。
鲜枣课堂
2019/12/25
1.7K0
一文看懂云物联网卡五大类型
善睐物联于2016年成立位于深圳,专注于安防行业应用,是集视频处理和物联通讯技术为一体的创新型物联网平台。致力于不断提升物联通讯技术,提供通信硬件设备、通信模组、数据流量及物联网综合管理平台等产品整合与技术支撑服务。
善睐物联
2022/11/23
3.1K0
一文看懂云物联网卡五大类型
5G边缘计算驱动智能物联新时代
当前全球正处在5G网络建设的起点上,这也是人联和物联时代分界线的历史起点。理解5G边缘计算从技术到产业的影响,将有助于人们把握未来的产业投资机会。
边缘计算
2019/09/17
1.4K0
5G边缘计算驱动智能物联新时代
【开源物联网平台】物联网平台运营方能那些服务?
随着物联网技术的快速发展,越来越多的企业开始认识到物联网对于提升业务效率和降低成本的重要性。为了满足不同企业和设备的需求,物联网平台运营方提供了一系列的服务,旨在帮助企业实现物联网应用的快速部署和高效运营。
帐篷Li-物联网布道师
2024/03/20
3440
腾讯5G物联开发套件与实践案例
欢迎关注公众帐号“鹅厂网事”,我们给你提供最新的行业动态信息、腾讯网络最接地气的干货分享。 注1:凡注明来自“鹅厂网事”的文字和图片等作品,版权均属于“深圳市腾讯计算机系统有限公司”所有,未经官方授权,不得使用,如有违反,一经查实,将保留追究权利; 注2:本文图片部分来自互联网,如涉及相关版权问题,请联系v_huanjian@tencent.com 腾讯5G物联开发套件的定位与价值 第5代移动通信技术(以下简称“5G”)致力于解决爆炸性移动数据流的增长,海量设备的连接以及不断涌现的新业务和新应用。
鹅厂网事
2020/01/03
2.6K0
腾讯5G物联开发套件与实践案例
SIM简介
5月17日,国际电信日。在这天,北京通信公司开始对北京城里的政府单位医疗机构等集体发放小灵通号码,随着小灵通在北京市区的出现,以及中国南北两大电信公司的互联互通,网通电信移动联通4足鼎立的局面已经形成,传统的高价资费模式已经被打破,单向收费和准单向收费成为人们最津津乐道的话题。现在全国各地移动联通公司纷纷推出价格便宜、针对不同阶层的手机卡。我为大家介绍一下中国的手机品牌卡以所支持的功能,希望能为即将购买手机的朋友提供一些帮助。
全栈程序员站长
2022/11/08
1.8K0
中国移动遭“薅羊毛” 一个月被黑卡刷走8.2万G流量
一直致力于打击黑卡的中国移动,如今正在被黑卡“薅羊毛”。 近日,21世纪经济报道记者发现,中国移动面向消费者推出的流量交易平台爱流量,已经被持有大量黑卡的刷单手攻占。2016年12月10日至2017年
神无月
2018/06/25
3K0
Giffgaff 卡国内使用教程(已有卡)
准备:giffgaff SIM 卡片( SIM 卡本体,最好是整个卡片),可以境外付款外币的 VISA/MasterCard 银行卡(信用卡、借记卡都可以),我使用的是中行非人哉外币借记卡。刚开始用广发美运卡,giffgaff 说不支持 Amex 的卡。 操作: 一、激活卡片
纯情
2023/04/26
8K0
推荐阅读
相关推荐
物联卡和普通流量卡的区别
更多 >
目录
  • 介绍
  • 先决条件
  • 第1步 - 启用mod_rewrite
  • 第2步 - 设置.htaccess
  • 第3步 - 配置URL重写
  • 示例1 - 使用RewriteRule简化查询字符串
  • 示例2 - 使用RewriteConds添加逻辑条件
  • 结论
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档