PHP URL yönlendirme

2 Cevap php

i am having a url like http://localhost/joomla/Joomla_1.5.7/index.php?option=com_content&view=section&layout=blog&id=3&Itemid=55

and i want to redirect this to http://localhost/joomla/Joomla1.5/index.php?option=com_content&view=section&layout=blog&id=3&Itemid=55

Not only this redirection but whenever i have anything next to Joomla_1.5.7/ i am trying to attach that to Joomla1.5 .. How to do this in PHP .... How to identify that the url contains something after Joomla_1.5.7 to get it??

EDIT: ## Can be commented out if causes errors, see notes above. Options +FollowSymLinks

#
  #  mod_rewrite in use

  RewriteEngine On

########## Begin - Rewrite rules to block out some common exploits
   ## If you experience problems on your site block out the operations listed below
   ## This attempts to block the most common type of exploit `attempts` to Joomla!
   #
   # Block out any script trying to set a mosConfig value through the URL
   RewriteCond %{QUERY_STRING} mosConfig_[a-zA-Z_]{1,21}(=|\%3D) [OR]
    # Block out any script trying to base64_encode crap to send via URL
  RewriteCond %{QUERY_STRING} base64_encode.*\(.*\) [OR]
  # Block out any script that includes a <script> tag in URL
 RewriteCond %{QUERY_STRING} (\<|%3C).*script.*(\>|%3E) [NC,OR]
 # Block out any script trying to set a PHP GLOBALS variable via URL
 RewriteCond %{QUERY_STRING} GLOBALS(=|\[|\%[0-9A-Z]{0,2}) [OR]
# Block out any script trying to modify a _REQUEST variable via URL
RewriteCond %{QUERY_STRING} _REQUEST(=|\[|\%[0-9A-Z]{0,2})

# Send all blocked request to homepage with 403 Forbidden error! RewriteRule ^(.*)$ index.php [F,L] # ########## End - Rewrite rules to block out some common exploits

#  Uncomment following line if your webserver's URL
#  is not directly related to physical file paths.
#  Update Your Joomla! Directory (just / for root)

# RewriteBase /


  ########## Begin - Joomla! core SEF Section

# RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_URI} !^/index.php RewriteCond %{REQUEST_URI} (/|.php|.html|.htm|.feed|.pdf|.raw|/[^.])$ [NC] RewriteRule (.) index.php RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization},L] # ########## End - Joomla! core SEF Section

 RewriteEngine on
 RewriteCond %{REQUEST_URI} ^/joomla/Joomla_1\.5\.7/.*
 RewriteRule ^(.*)$ http://%{HTTP_HOST}/joomla/Joomla1.5/$1 [R=301,L]

benim htaccess dosyasında içerik ama yine de benim sitede herhangi bir değişiklik gösterdi.

2 Cevap

Eğer böyle bir htaccess dosyası ile bunu yapabilirsiniz:

RewriteEngine on
RewriteRule ^joomla/Joomla_1.5.7/(.*?)$ joomla/Joomla1.5/$1 [L,QSA]

Kesinlikle PHP ile bunu başarmak istiyorsanız Ancak, eski index.php bu koymak:

header("Status: 301");
header("Location: http://localhost/joomla/Joomla1.5/index.php".(!empty($_GET) ? '?'.http_build_query($_GET) : ''));
exit;

. Eğer mod_rewrite varsa, htaccess de bu satırlar boyunca bir şey koyabilirsiniz:

RewriteEngine on

RewriteCond %{REQUEST_URI} ^/joomla/Joomla_1\.5\.7/.*
RewriteRule ^(.*)$ http://%{HTTP_HOST}/joomla/Joomla1.5/$1 [L]

Temelde, / joomla/Joomla_1.5.7 / ile başlar ve / joomla/Joomla1.5 / onu yönlendirir, tüm ekstra parametreler bozulmadan gelen herhangi bir URL ile eşleşen, ancak URL kullanıcının adres çubuğunda değişiklik olmayacak.

Eğer URL değiştirmek istiyorsanız, size son satırı değiştirebilirsiniz

RewriteRule ^(.*)$ http://%{HTTP_HOST}/joomla/Joomla1.5/$1 [R=301,L]

Bu sizin için ne arıyorsanız Umut!