2015-06-21 211 views
1

我对PHP很少有经验,使用.htaccess,但我想创建适合搜索引擎优化的URL。我搜索了互联网和Stackoverflow,搜索类似于我的问题。我尝试了多种解决方案,但没有运气,我经常遇到错误。使用.htaccess和PHP的友好URL“include”

所以我决定创建自己的,虽然我知道这里可能有一个正确的解决方案,我一直无法找到它。

这是我的网址如何目前看来www.site.com/?p=example

我想为www.site.com/example

我的.htaccess文件设置喜欢它显得如此
RewriteBase/ RewriteEngine On RewriteCond %{HTTP_HOST} !^www\. RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L]

index.php文件设置像这样http://puu.sh/ix8vV/33ff702e21.png

帮助将不胜感激,因为我一直试图这几个小时无济于事。

在此先感谢!

回答

1

您将需要一个额外的路由器规则来转发所有的非文件和非目录index.php与参数p

RewriteEngine On 
RewriteBase/

RewriteCond %{HTTP_HOST} !^www\. [NC] 
RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L] 

# If the request is not for a valid directory 
RewriteCond %{REQUEST_FILENAME} !-d 
# If the request is not for a valid file 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteRule (.+) ?p=$1 [L,QSA] 
+0

感谢您的答复。但是,这只是将所有网址重定向回主页,而不是我的错误适当的页面 –

+0

,现在尝试我的更新规则。 – anubhava

+1

太棒了!谢谢你的帮助 :) –