如何使用 PHP 将数据库中的 URL 代码附加到域名并重定向?
我使用了一半的 URL 缩短系统。我从用户那里获取 URL,然后在 MySQL 中为此创建代码。然后我必须将即将到来的代码附加到我的域名(现在我正在本地主机上工作),例如 http://localhost/a5c3 然后将其重定向到真实域。
我被困在这里了代码片段至少对我有好处,让我理解我要做什么,或者你可以解释我要做什么。
I am on half of URL shortening system. I get the URL from the user and then create code in MySQL for that. Then I have to append coming code to my domain name (now I am working on localhost) like http://localhost/a5c3 then redirect it to real domain.
I stuck in here. A code snippet would be good for me at least to understand what I am going to do or you can explain what I am going to do.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
如果您没有将短代码与 URL 相关联,那么您需要这样做,并且重定向会很容易。
算法:
将表单中的 URL 和生成的代码保存到数据库中以供以后使用。
向用户显示缩短的 URL。
如果您想重定向用户,在他/她将 URL 放入浏览器地址后,请执行以下操作:
创建一个 .htaccess 文件,向其中添加以下行并将其拖放到您的根文件夹中:
.htaccess 文件会将所有内容重定向到你的index.php。例如,如果用户输入 http://example.com/ujijui 那么 .htaccess 将调用 http://example.com/index.php?code=ujijui。因此,您可以使用 $_GET 捕获 URL 中的查询字符串。
在你的index.php文件中:
明白了,这只是一个算法。
If you are not associating short code with a URL then you need to do that, and redirection will be easy.
Algorithm:
Save the URL from the form and generated code to the database for later use.
Show the shortened URL to the user.
If you want redirect the user, after he/she puts the URL in the browser address then do this:
Create a .htaccess file, add the following lines to it and drop it to your root folder:
The .htaccess file will redirect everything to your index.php. For example, if the user types http://example.com/ujijui then .htaccess will call http://example.com/index.php?code=ujijui. So you can capture the query string in the URL by using $_GET.
In your index.php file:
Get it, this is just an algorithm.
您需要让服务器将不存在的 URL 重定向到现有页面(例如,使用 mod_rewrite 在 Apache 上)。这个“包罗万象”的页面将读取 URL,检查数据库中是否存在给定的代码,如果存在,则重定向到正确的 URL。 Ainab 的伪代码解释了最后一部分。
You need to have your server redirect non-existent URLs to an existing page (for example, using mod_rewrite on Apache). This 'catch-all' page will read the URL, check if the code given exists in the database, and if so, redirect to the proper URL. Ainab's pseudocode explains the last part.
对于重定向问题,您应该尝试这样的操作:
.htaccess 文件:
在index.php 文件中:
然后,当用户转到 http://localhost/1234,他/她被重定向到 http://example。当然,您应该在数据库上运行查询而不是从数组中读取,但它看起来很简单,只需使用类似以下内容:
For the redirection problem, you should try something like this:
The .htaccess file:
And in the index.php file:
Then, when the user goes to, for example, http://localhost/1234, he/she gets redirected to http://example.com, etc. Of course, you should run a query on the database instead of reading from an array, but it looks quite easy, just use something like: