2

.htaccess好的,我对RewriteRule有一个小问题。

我在本地创建了一个简单的网站,它使用 RewriteRule 的网址,例如:

http://localhost/ <- main page
http://localhost/log/ <- log page
etc.

我的 .htaccess 文件中有这个:

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /script
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

AuthUserFile c:\data\mysite\.htpasswd
AuthType Basic
AuthName "Secret place"
require valid-user

由于该站点已准备就绪并且基本上只是一个有用的脚本,因此我将内容移至http://mysite/script/

当我打开时一切正常http://mysite/script/,但是当我点击一个 url 时,它会http://mysite/script/log/在浏览器栏中打开,但会加载http://mysite/首页内容。

意思是,重定向不允许我阅读必要的log内容,但认为这是对首页的重写(因为主站点没有值script/log/

现在,如何设置它以加载真实 mysite/script/log内容?

提前致谢。

编辑:

这是.htaccess主站点根目录上的文件:

RewriteEngine On

RewriteCond %{HTTP:range} !(^bytes=[^,]+(,[^,]+){0,4}$|^$)
RewriteRule .* - [F]

RewriteCond %{HTTP_HOST} ^mysite\.com
RewriteRule (.*) https://www.mysite.com/$1 [R=301,QSA,L]

RewriteCond  %{QUERY_STRING} (\&ch_lang\=[]{2}|)
RewriteRule  ^one-of-links$ ?main_page_extend=4011%1 [L]

php_value memory_limit 512M
4

1 回答 1

2

您需要将 更改RewriteBase/script。否则,当重写/index.php发生时,它会转到文档根目录的 index.php(您的首页),而不是脚本中的那个。

于 2012-08-17T16:15:02.690 回答