用于 ? (特殊字符)在 httpd-vhost.conf 的服务器名中

Posted

技术标签:

【中文标题】用于 ? (特殊字符)在 httpd-vhost.conf 的服务器名中【英文标题】:use of ? (special character) in servername of httpd-vhost.conf 【发布时间】:2012-11-25 12:16:49 【问题描述】:

我创建了一个新的虚拟主机,如下所示:

<VirtualHost http://developer.com/TimeService/V1/gettime:80>

服务器名称http://developer.com/TimeService/V1/gettime

DocumentRoot D:/xampp/htdocs/developer.com

ServerAdmin admin@developer.com

选项索引 FollowSymLinks

AllowOverride FileInfo

命令允许,拒绝

所有人都允许

我希望前 2 行看起来像

<VirtualHost http://developer.com/TimeService/V1/gettime?appid:80>

服务器名称http://developer.com/TimeService/V1/gettime?appid

我面临的问题是我什么时候放? (特殊字符)在上面的http中apache服务器拒绝启动。

我应该如何让 apache 识别这个??

【问题讨论】:

【参考方案1】:

服务器名称仅限于完全限定域名, http://httpd.apache.org/docs/current/mod/core.html#servername

您可以改用重写或重定向。

【讨论】:

你能分享一下我的查询如何使用重写或重定向!! 首先,改为ServerName developer.com 取决于你的配置,你可以使用 。如果 'gettime' 是 API 的脚本文件名,则无需重写。您可以按照指南进行重写,httpd.apache.org/docs/2.0/misc/rewriteguide.html。

以上是关于用于 ? (特殊字符)在 httpd-vhost.conf 的服务器名中的主要内容,如果未能解决你的问题,请参考以下文章

RegEx 用于比较具有特殊字符的两个字符串

用于仅从字符串中删除特定特殊字符的正则表达式

Get-AzureADUser 过滤器 - 用于特殊字符

正则表达式,用于验证不同格式的字符串,用于特殊时间转换[重复]

htaccess 文件不适用于特殊字符

C++特殊字符转义序列