【发布时间】:2014-08-24 21:09:44
【问题描述】:
stackoverflow 社区。 我删除了 site.com/index.php 重复,我确实添加了 www,所以它看起来 www.site.com 并且工作得很好。在所有这些操作之后,我遇到了一个问题 - 如果我从显示非 www 版本的谷歌搜索访问我的网站,我会被重定向到 www 版本,但我在 ulr 中间得到 /?/,比如 site.com/ ?/reviews/acticle/3 ...你工作并打开了文章。但是我设法以某种方式摆脱了 /?/ 并且现在一切正常,但我的问题是: 如果我去 site.com/index.php 它会将我重定向到主页 如果我直接输入 f.e. site.com/index.php/reviews/article/3 它仍然有效。 那么,它仍然有效并且不重定向我是不是坏兆头?我无法以任何其他方式访问它,f.e.来自谷歌搜索,除了自己输入。 这是我的 htaccess 文件,我希望它看起来不会太乱:
Options +FollowSymLinks
Options -Indexes
DirectoryIndex index.php
RewriteEngine on
RewriteCond %{HTTP_HOST} ^site.info$
RewriteRule (.*) http://www.site.info/$1 [R=301,L]
RewriteCond $1 !^(index.php|images|upload|robots.txt|css)
RewriteCond %{REQUEST_URI} !.(css¦js¦jpg¦gif)$
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /index.php?/$1 [L,QSA]
RewriteCond %{THE_REQUEST} ^.*/index.php
RewriteRule ^(.*)index.php$ http://www.site.info/$1 [R=301,L]
AddDefaultCharset UTF-8
提前致谢!
【问题讨论】:
标签: php .htaccess codeigniter rewrite