HyperLinks无法正常工作(使用带有htaccess的漂亮网址时重定向)

时间:2015-05-23 19:11:49

标签: php html .htaccess hyperlink url-rewriting

这是我的PHP代码(qs.php)。此文件包含漂亮的URL链接。

<html>
<head></head>
<body>
    <?php  
    $file = 'qs1'; //this is a php file qs1.php
    $id = '12345678'; //testing ID
    $complete_url = $file."/".$id;

    ?>
    <a href ="<?php echo $complete_url;?>"> This is a test link </a>

</body></html>

此链接会显示此链接 - http://localhost/qs1/12345678

QS1是一个php文件(qs1.php)。

QS1.php

<html>
<head>
<title>QS1 file</title>
</head>
<body>
<a href="#"><img src="images/blog/girl.png" class="img-circle" alt="" /></a>
<a href="#"><img src="images/blog/girl2.png" class="img-circle" alt="" /></a>
<a href="#"><img src="images/blog/girl3.png" class="img-circle" alt="" /></a>

</body></html>

以下是htaccess代码。

Options -MultiViews

RewriteEngine On
RewriteBase /

RewriteCond %{REQUEST_FILENAME} -d [OR]
RewriteCond %{REQUEST_FILENAME} -f
RewriteRule ^ - [L]

RewriteRule ^([^/]+)/(\d+)/$ $1/$2 [R=301,L]

一切都很好。我的链接工作正常。 此处可以访问http://localhost/qs1/12345678链接。我可以访问该页面。在我当前的页面中,只要我使用此代码()。我可以在该页面上说出其他链接。

<a href="#"><img src="images/blog/girl.png" class="img-circle" alt="" /></a>

它仅重定向到localhost,而不是将其传递给当前页面。

不确定我错过了什么。

2 个答案:

答案 0 :(得分:0)

我认为你想:如果文件或目录没有退出而不是重定向

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^/]+)/(\d+)/$ $1/$2 [R=301,L]

答案 1 :(得分:0)

我明白了。这不是htaccess或url重定向问题。 这是JavaScript问题。 #用于jquery。 我的功能不正常。

因此,它被重定向到localhost。 我发现这个链接可以帮助我理解出了什么问题。 What does <a href="#" class="view"> mean?

这就是它没有指挥的原因。 我在jquery中使用#。如下所示。

$(document).ready(function(){ 
$("#").click(function(){
    alert("Hello!");
});

$(“#”)不是有效的选择器。所以,我将不得不使用锚标签。

以下是工作代码。

$(document).ready(function(){ 

    $(".vote").click(function(event) {
    event.preventDefault();
    alert("Hello!");
});

event.preventDefault()因为我正在使用而被使用

希望这有助于某人。

我得到了DelightedD0D找出问题的帮助。 您可以在此链接上看到完整的答案。

bind click event to anchor tags on my page