2016-12-16 2 views
0

У меня есть старый сайт:Как урезать адрес перенаправления? от пути к другому пути?

https://www.test.com/blogs/test/123-title

и хотел перенаправить весь динамический URL на основе https://www.test.com/blogs/test/123-xxxxx -> 123-хххх может быть любой динамический титул

в https://www.test.com/blog/xxxxx

так основно Мне нужно удалить «/ blogs/test/123-xxxx» и изменить его на «/ blog/xxxxx»

мы можем это сделать в Htaccess?

, как я не знаком с этим

спасибо

прикреплением моего кода HTAccess:

DirectoryIndex index.php 

<IfModule mod_php5.c> 

    php_value memory_limit 256M 
    php_value max_execution_time 18000 

############################################ 
## disable magic quotes for php request vars 

    php_flag magic_quotes_gpc off 

############################################ 
## disable automatic session start 
## before autoload was initialized 

    php_flag session.auto_start off 

############################################ 
## enable resulting html compression 

    #php_flag zlib.output_compression on 

########################################### 
# disable user agent verification to not break multiple image upload 

    php_flag suhosin.session.cryptua off 

########################################### 
# turn off compatibility with PHP4 when dealing with objects 

    php_flag zend.ze1_compatibility_mode Off 

</IfModule> 

<IfModule mod_security.c> 
########################################### 
# disable POST processing to not break multiple image upload 

    SecFilterEngine Off 
    SecFilterScanPOST Off 
</IfModule> 

<IfModule mod_deflate.c> 

############################################ 
## enable apache served files compression 
## http://developer.yahoo.com/performance/rules.html#gzip 

    # Insert filter on all content 
    ###SetOutputFilter DEFLATE 
    # Insert filter on selected content types only 
    #AddOutputFilterByType DEFLATE text/html text/plain text/xml text/css text/javascript 

    # Netscape 4.x has some problems... 
    #BrowserMatch ^Mozilla/4 gzip-only-text/html 

    # Netscape 4.06-4.08 have some more problems 
    #BrowserMatch ^Mozilla/4\.0[678] no-gzip 

    # MSIE masquerades as Netscape, but it is fine 
    #BrowserMatch \bMSIE !no-gzip !gzip-only-text/html 

    # Don't compress images 
    #SetEnvIfNoCase Request_URI \.(?:gif|jpe?g|png)$ no-gzip dont-vary 

    # Make sure proxies don't deliver the wrong content 
    #Header append Vary User-Agent env=!dont-vary 

</IfModule> 

<IfModule mod_ssl.c> 

############################################ 
## make HTTPS env vars available for CGI mode 

    SSLOptions StdEnvVars 

</IfModule> 

<IfModule mod_rewrite.c> 

############################################ 
## enable rewrites 

    Options +FollowSymLinks 
    RewriteEngine on 



############################################ 
## uncomment next line to enable light API calls processing 

# RewriteRule ^api/([a-z][0-9a-z_]+)/?$ api.php?type=$1 [QSA,L] 

############################################ 
## rewrite API2 calls to api.php (by now it is REST only) 

    RewriteRule ^api/rest api.php?type=rest [QSA,L] 

############################################ 
## workaround for HTTP authorization 
## in CGI environment 

    RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}] 

############################################ 
## TRACE and TRACK HTTP methods disabled to prevent XSS attacks 

    RewriteCond %{REQUEST_METHOD} ^TRAC[EK] 
    RewriteRule .* - [L,R=405] 

<IfModule mod_setenvif.c> 
    <IfModule mod_headers.c> 

     ############################################ 
     # X-Content-Type-Options: nosniff disable content-type sniffing on some browsers. 
     Header set X-Content-Type-Options: nosniff 

     ############################################ 
     # This header forces to enables the Cross-site scripting (XSS) filter in browsers (if disabled) 
     BrowserMatch \bMSIE\s8 ie8 
     Header set X-XSS-Protection: "1; mode=block" env=!ie8 

    </IfModule> 
</IfModule> 

############################################ 
## redirect for mobile user agents 

    #RewriteCond %{REQUEST_URI} !^/mobiledirectoryhere/.*$ 
    #RewriteCond %{HTTP_USER_AGENT} "android|blackberry|ipad|iphone|ipod|iemobile|opera mobile|palmos|webos|googlebot-mobile" [NC] 
    #RewriteRule ^(.*)$ /mobiledirectoryhere/ [L,R=302] 

############################################ 
## always send 404 on missing files in these folders 

    RewriteCond %{REQUEST_URI} !^/(media|skin|js)/ 

############################################ 
## never rewrite for existing files, directories and links 

    RewriteCond %{REQUEST_FILENAME} !-f 
    RewriteCond %{REQUEST_FILENAME} !-d 
    RewriteCond %{REQUEST_FILENAME} !-l 

############################################ 
## rewrite everything else to index.php 

    RewriteRule .* index.php [L] 
    RewriteRule ^/blogs/test/[^-]+-(.+)$ /blog/$1 [END,R=301] 

</IfModule> 


############################################ 
## Prevent character encoding issues from server overrides 
## If you still have problems, use the second line instead 

    AddDefaultCharset Off 
    #AddDefaultCharset UTF-8 

<IfModule mod_expires.c> 

############################################ 
## Add default Expires header 
## http://developer.yahoo.com/performance/rules.html#expires 

    ExpiresDefault "access plus 1 year" 

</IfModule> 

############################################ 
## By default allow all access 

    Order allow,deny 
    Allow from all 

########################################### 


    <Files RELEASE_NOTES.txt> 
     order allow,deny 
     deny from all 
    </Files> 

############################################ 
## If running in cluster environment, uncomment this 
## http://developer.yahoo.com/performance/rules.html#etags 

    #FileETag none 

########################################### 
## Deny access to cron.php 
    <Files cron.php> 

############################################ 
## uncomment next lines to enable cron access with base HTTP authorization 
## http://httpd.apache.org/docs/2.2/howto/auth.html 
## 
## Warning: .htpasswd file should be placed somewhere not accessible from the web. 
## This is so that folks cannot download the password file. 
## For example, if your documents are served out of /usr/local/apache/htdocs 
## you might want to put the password file(s) in /usr/local/apache/. 

     #AuthName "Cron auth" 
     #AuthUserFile ../.htpasswd 
     #AuthType basic 
     #Require valid-user 

############################################ 

     Order allow,deny 
     Deny from all 

    </Files> 

ответ

0

Вы можете использовать это правило, как первого правила в /blog/.htaccess:

RewriteEngine On 

RewriteRule ^test/[^-]+-(.+)$ /blog/$1 [L,NC,NE,R=301] 

# rest of rules go here 
+0

Я обновил свои требования, вы можете пожалуйста, посмотрите :) – Boby

+0

hmm его не работает вообще Я положил прямо ниже переписать на – Boby

+0

У меня есть 2 сайта, один - это сайт, один - блог, а htaccess стреляет на корневой сайт, где мне нужно перенаправить на сайт блога. – Boby

 Смежные вопросы

  • Нет связанных вопросов^_^