无法使用URL重写将关键字添加到URL


Unable To Add keywords to URL using URL Rewriting

我正在根据下面的建议更新我的问题

用于重写的.htaccess文件代码-

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule ^SearchResult/(.*)$ SearchResult.php?category_slug=$1 [QSA,L]
</IfModule>

但是上面的.htaccess规则并没有改变我的url。如果你转到下面的url,它不是按照规则重写url

Url-http://expertsusa.org/SearchResult.php?category_slug=t

Url应重写为http://expertsusa.org/SearchResult/t

首先在.htaccess文件-中尝试下面的代码

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule    ^/SearchResult/$1   SearchResult.php?id=$1    [NC,L]    
</IfModule>

上面的代码是为SearchResult.php页面添加更多页面时,您可以卸载并使用上面类似类型的代码,如About.php,您可以在下面使用-

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule    ^/SearchResult/$1   SearchResult.php?id=$1    [NC,L]    
RewriteRule    ^/About/$1   About.php    [NC,L]    
</IfModule>

在您的情况下,在.htaccess文件中进行上述更改后,您的url将根据需要工作。但是你的页面css在这之后被弄糊涂了,因为你的js,特别是你的css文件没有根路径,请尝试下面的解决方案-

转换以下代码行

 <link href="css/bootstrap.min.css" rel="stylesheet" async>
    <script src="js/jquery.min.js" ></script>
    <script src="js/bootstrap.min.js" ></script>
    <script src="js/alertify.min.js" type="text/javascript" ></script>

至下方

<link href="/css/bootstrap.min.css" rel="stylesheet" async>
<script src="/js/jquery.min.js" ></script>
<script src="/js/bootstrap.min.js" ></script>
<script src="/js/alertify.min.js" type="text/javascript" ></script>

订单是重要的

<IfModule mod_rewrite.c>
RewriteEngine On
# browser requests PHP
RewriteRule ^SearchResult/(.*)$ SearchResult.php?category_slug=$1 [QSA,L]
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}' /([^' ]+)'.php
RewriteRule ^/?(.*)'.php$ /$1 [L,R=301]
#It is to check whether Request if for PHP File
RewriteCond %{REQUEST_FILENAME}'.php -f
RewriteRule ^/?(.*)$ /$1.php [L]
</IfModule>

试试这些规则:

Options -MultiViews
RewriteEngine On
RewriteCond %{THE_REQUEST} /SearchResult'.php'?category_slug=([^'s&]+) [NC]
RewriteRule ^ /SearchResult/%1? [R=302,L,NE]
RewriteCond %{THE_REQUEST} 's/+(.+?)'.php['s?] [NC]
RewriteRule ^ /%1 [R=302,NE,L]
RewriteRule ^SearchResult/(.*)$ SearchResult.php?category_slug=$1 [QSA,L]
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule ^(.+?)/?$ $1.php [L]