使用.htaccess重写URL不能使用多次重写动态或静态

时间:2017-05-01 19:59:25

标签: php .htaccess

我无法使用.htaccess创建精美网址。

我在数据库中保存标题,例如"标题名称"但是当我尝试从URL访问它时会出现问题,它不会向我显示CSS,只显示内容。

此博客网址的作用类似于:

http://example.com/blog?title=page-title

我需要一个像这样的网址

http://example.com/blog/post-title

这是我的档案,我是初学者。

<files .htaccess>
order allow,deny
deny from all
</files>

RewriteEngine On
RewriteRule ^blog$ blog.php
RewriteRule ^blog/$ blog.php
RewriteRule ^blog/([^/]*)$ /blog?title=$1 [L]

RewriteEngine On
RewriteRule ^category/([^/]*)$ category.php?$1 [L]

<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /

    # To externally redirect /dir/abc.php to /dir/abc
    RewriteCond %{THE_REQUEST} ^[A-Z]{3,}\s/+(.+?)\.php[\s?] [NC]
    RewriteRule ^ /%1 [R=301,L,NE]

    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME}.php -f
    RewriteRule ^(.+?)/?$ $1.php [QSA,NC,L]
</IfModule>
<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME}.php -f
    RewriteRule ^([^\.]+)$ $1.php [QSA,NC,L]
</IfModule>

RewriteEngine On
RewriteCond %{HTTP_HOST} ^my-webiste.com
RewriteRule (.*) http://www.my-website.com/$1 [R=301,L]

RewriteEngine On
ErrorDocument 404 /404.php

1 个答案:

答案 0 :(得分:1)

您只需要更新HTML,这样就可以使用绝对链接来引用CSS,图片等。通过您的精美网址,浏览器现在从/blog/而不是root开始查找。