2017-10-17 84 views
1

我有这个URL重定向重定向脚本如何在.htaccess文件中设置url重写?

http://my-domain.com/URL.php?url=http://www.google.com

我想重写URL作为

http://my-domain.com/?url=http://www.google.com

http://my-domain.com/?http://www.google.com

我知道这是可以做到的.htaccess,所以我尝试了一些自己的代码。我在我的web目录中创建一个.htaccess文件和我把一些代码,如:

# Prevent Apache from serving .ht* files: 
<FilesMatch "^\.ht"> 
Order allow,deny 
Deny from all 
</FilesMatch> 
RewriteEngine on 
RewriteCond %{HTTP_HOST} ^www.my-domain.com$ [NC] 
RewriteRule ^(.*)$ http://my-domain.com/$1 [R=301,L] 
RewriteRule ^embed/([^\.]+)\.php$ /$1 [L] 
RewriteRule URL.php/

但仍然是不工作的,什么是我做错了这里

+0

我不认为这需要用'php'标记 – GrumpyCrouton

回答

2

试试这一个。

RewriteEngine On 
RewriteBase/
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^url/(.*)$ /URL.php?url=$1 [L] 

例子:http://yoursite.com/url/http://www.google.com

RewriteEngine On 
RewriteBase/
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^go/(.*)$ /URL.php?url=$1 [L] 

例子:http://yoursite.com/go/http://www.google.com

这将是更好地使用这种方式。

+0

两者都给我“403 Forbidden”错误 –

+0

我忘了添加Get参数。我希望它能起作用。现在你可以试试。 –

+0

并添加了RewriteBase。 –