2017-02-23 122 views
1

我想使用.htaccess没有.php或html扩展的seo友好的url。也自动重定向到带尾部斜线的https://www结尾网址。删除.php扩展添加斜杠并用htaccess重定向到www

我有PHP页面: - 的index.php - product.php - about.php - contact.php - network.php

最终获得我要像的https:// WWW .mydomain.com来/产品/

Web服务器的Apache 2.4.6

我尝试b UT图像,CSS,JS,字体,其他PHP/HTML文件不能正常工作

RewriteEngine On 

# Remove file extensions, add a trailing slash. 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteRule ^([^/]+)/$ $1.php 
RewriteRule ^([^/]+)/([^/]+)/$ /$1/$2.php 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{REQUEST_URI} !(\.[a-zA-Z0-9]{1,5}|/)$ 
RewriteRule (.*)$ /$1/ [R=301,L] 

谢谢大家提前。

+0

请在这里学习如何提出问题。 SO不是一个免费的编码服务,我们不在这里为你做你的工作。抱歉。 http://stackoverflow.com/help/how-to-ask&http://meta.stackoverflow.com/questions/261592/how-much-research-effort-is-expected-of-stack-overflow-users – arkascha

+0

对不起,如果我的问题不友好 –

+0

一切都好;-)这不是关于友好的!你增加了你的尝试,很好,而且你还添加了一些非常重要的细节,这些问题给了一些全新的方向。有了这些具体的信息,人们实际上可以帮助。谢谢! – arkascha

回答

0

可以将此规则删除.php然后执行关于你的Apache 2.4

RewriteEngine on 
RewriteCond %{HTTPS}#%{HTTP_HOST} ^off#(?:www\.)?(.+)$ 
RewriteRule^https://www.%1%{REQUEST_URI} [NE,L,R] 
#remove .php 
RewriteRule ^(.+)\.php$ /$1/ [L,R] 
RewriteCond %{REQUEST_FILENAME}.php -f 
RewriteRule ^(.*?)/?$ /$1.php [END] 

HTTPS要解决你的CSS,JS和其他相关资源,只需以下基本标记添加到您的网页的头部分

<base href="/"> 
相关问题