【问题标题】:mod_rewrite URLsmod_rewrite URL
【发布时间】:2011-09-12 03:27:59
【问题描述】:

我想重写 URL,所以当有人去的时候:

url.com/directory1/directory2 

他在浏览器地址栏中看到了 URL,但实际上下面的 URL 显示的是文本

url.com/index.php/directory1/directory2 

所以基本上,URL url.com/directory1/directory2 转到 url.com/index.php/directory1/directory2

如何使用 .htaccess 和/或 mod_rewrite 来做到这一点?重写规则是什么?

【问题讨论】:

    标签: .htaccess mod-rewrite


    【解决方案1】:

    在你的 .htacces 文件中使用这个:

    RewriteEngine on
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^(.*)/(.*)(\/?)$ /index.php/$1/$2 [NC,QSA,L]
    

    OR 在您的 httpd.conf 中

    <VirtualHost *:80>
        DocumentRoot "/var/www/"
        ServerName www.url.com   
        ServerAlias www.url.com
        <Directory /path/to/www/> 
            RewriteEngine on
            RewriteCond %{REQUEST_FILENAME} !-f
            RewriteCond %{REQUEST_FILENAME} !-d 
            RewriteRule ^(.*)/(.*)(\/?)$ /index.php/$1/$2 [NC,QSA,L]
        </Directory>
    </VirtualHost>
    

    如果你使用 PHP:

    $_SERVER['REQUEST_URI'] 将拥有/asd/asd

    【讨论】:

    • 它给了我访问被拒绝的朋友
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-11-12
    • 2015-02-26
    • 2012-12-02
    • 2012-08-24
    • 2011-01-04
    相关资源
    最近更新 更多