我是新手php / mysql开发人员,需要一些帮助。
我正在与.NET开发人员合作开展一个项目。他在.NET中构建了一个URL重定向功能,使用URL中的?
(例如,mysite.com?123
重定向到www.realsite.com
。这个开发人员现在已经消失在我身上,我再也无法访问服务器。
我需要将我的域移动到新服务器并在php / mySQL中重新创建此功能。我需要使用这种技术支持大约40个网址(它们嵌入在QR码中)。我不需要以这种方式生成新重定向的解决方案 - 我有一个不同的解决方案。
我的新服务器将在bluehost上。
非常感谢能帮助我的人。
答案 0 :(得分:2)
要复制原始设置,您根本不需要涉及PHP。您可以使用某些RewriteRules
:
RewriteCond %{QUERY_STRING} ^123$
RewriteRule ^$ http://realsite.com/
答案 1 :(得分:1)
查询字符串可在$_SERVER['QUERY_STRING']
。
答案 2 :(得分:0)
在mysite.com
域的旧主机上,在DOCUMENT_ROOT中创建.htaccess文件,如下所示:
Options +FollowSymlinks -MultiViews
RewriteEngine on
# for HTTP traffic
RewriteCond %{QUERY_STRING} !^$
RewriteCond %{SERVER_PORT} =80
RewriteRule ^/?$ http://www.realsite.com/? [R=301,L]
# for HTTPS traffic
RewriteCond %{QUERY_STRING} !^$
RewriteCond %{SERVER_PORT} =443
RewriteRule ^/?$ https://www.realsite.com/? [R=301,L]
上面的代码会将每个看似mysite.com?foo
的URI重定向到http://www.realsite.com/
,状态代码为301.
?
最后将丢弃任何现有的QUERY字符串。
答案 3 :(得分:-1)
http://example.com?123
相当于做
http://example.com/index.php?123
您的选择是通过mod_rewrite捕获这些代码,并将请求重定向到专门设置来处理这些遗留URL的脚本。或者,您可以修改index.php脚本以查找代码并在此时执行任何操作。