htaccess設定不對嗎?

Centos, Ubuntu, Nginx, MySQL, Redis, Mongodb, Docker, ...
发表回复
头像
jwxie
炉火纯青
炉火纯青
帖子: 510
注册: 2007-07-09 10:31

htaccess設定不對嗎?

帖子 jwxie » 2008-05-28 10:06

我想做一個密碼保護
暫時用IO兄提供的homemaster的shared webserver

我自創了htaccess和.htpasswd

我要保護的是/public_html/robotics/
以下是我寫的htaccess

代码: 全选

# Turn on rewrites.
RewriteEngine on

# Also redirect the root folder.
RewriteCond %{HTTP_HOST} ^(www.)?goko.hzhan.com$
RewriteRule ^(/)?$ robotics/index.php [L]



AuthUserFile /home/hzhancom/public_html/robotics/.htpasswd
AuthType Basic
AuthName "Restricted Area"
require valid-user
我肯定我的密碼那些(encrypted)都不會有錯
我輸入http://goko.hzhan.com後
會自動跑入robotics, 之後會要求你輸入密碼
但明明都填對了
出現了500的錯誤

到底是哪裡出錯?

我因為會定期改密碼, 暫時先用IO的這個空間, 因此我不想麻煩兄弟經常幫我改密碼
而且我將來在學校的新web server上也會做類似的事
到底是我htaccess寫錯了什麼?

btw,. 我的htaccess和htpwd都放在/robotics/裡面

裡面有drupal, 有phpBB3
我覺得沒有寫錯...

头像
IOsetting
论坛管理员
论坛管理员
帖子: 3641
注册: 2006-10-17 1:48

Re: htaccess設定不對嗎?

帖子 IOsetting » 2008-05-28 12:35

看你的叙述可能会有两处的问题:

一是.htpasswd的路径,应该是 /home/hzhancom/public_html/goko/robotics/.htpasswd 这个用php的函数可以得到
二是用户密码的encrypt, 在linux下用 htpasswd -nb 用户名 密码 的形式得到。

头像
jwxie
炉火纯青
炉火纯青
帖子: 510
注册: 2007-07-09 10:31

Re: htaccess設定不對嗎?

帖子 jwxie » 2008-05-28 13:36

先感謝IO協助
我改了一下

現在
404 Not Found
The requested URL /robotics/ does not exist.
輸入密碼後的情況

# Turn on rewrites.
RewriteEngine on

# Also redirect the root folder.
RewriteCond %{HTTP_HOST} ^(www.)?goko.hzhan.com$
RewriteRule ^(/)?$ robotics/index.php [L]



AuthUserFile /home/hzhancom/public_html/goko/robotics/.htpasswd
AuthType Basic
AuthName "Restricted Area"
require valid-user
如果按上面這麼填
你如果訪問http://goko.hzhan.com/robotics/是找不到的
但如果你訪問http://goko.hzhan.com/是可以直接跑裡robotics裡面, 打開drupal的頁面



但是, 如果不加, 現在也會自動轉頁!!!??? 會自動不跑root directory, 而是直接rewrite後跑到/robotics/裡找到drupal
# Also redirect the root folder.
RewriteCond %{HTTP_HOST} ^(www.)?goko.hzhan.com$
RewriteRule ^(/)?$ robotics/index.php [L]
大家來打開看看

http://goko.hzhan.com/
http://goko.hzhan.com/robotics/
http://goko.hzhan.com/robotics/phpBB3


因此, 現在我的htaccess只有
AuthUserFile /home/hzhancom/public_html/goko/robotics/.htpasswd
AuthType Basic
AuthName "Restricted Area"
require valid-user

头像
IOsetting
论坛管理员
论坛管理员
帖子: 3641
注册: 2006-10-17 1:48

Re: htaccess設定不對嗎?

帖子 IOsetting » 2008-05-28 14:40

不太明白你的做法, 因为你没有提供用户名密码, 我们也没法测试.
如果需要转移root, 建议你在root下放的.htaccess只规定redirect, 而加上对robotics子目录的访问限制,最好在robotics下再放一个.htaccess来设定用户和密码。

或者是在root下放.htaccess来设定用户和密码, 而通过root下的index.html或者default.html来实现redirect功能。

头像
jwxie
炉火纯青
炉火纯青
帖子: 510
注册: 2007-07-09 10:31

Re: htaccess設定不對嗎?

帖子 jwxie » 2008-05-29 5:25

IOsetting 写道:不太明白你的做法, 因为你没有提供用户名密码, 我们也没法测试.
如果需要转移root, 建议你在root下放的.htaccess只规定redirect, 而加上对robotics子目录的访问限制,最好在robotics下再放一个.htaccess来设定用户和密码。

或者是在root下放.htaccess来设定用户和密码, 而通过root下的index.html或者default.html来实现redirect功能。
機器很奇怪的
以前我沒有.htaccess, 什麼都沒寫的時候, 如果只輸入domain , 你是不會跑到/robotics/裡面去的
但我開始加了這句就會自動找到/robotics/的首頁
# Also redirect the root folder.
RewriteCond %{HTTP_HOST} ^(www.)?goko.hzhan.com$
RewriteRule ^(/)?$ robotics/index.php [L]
但後來經我測試, 認為這個寫法會causing conflict with protected directory的那部份
現在我的hataccess只有以下
AuthUserFile /home/hzhancom/public_html/goko/robotics/.htpasswd
AuthType Basic
AuthName "Restricted Area"
require valid-user
奇怪的是, 我移走redirect the root folder那部份後, 現在每次只要browse goko.hahzan.com就會自動進入index.php
真奇怪喔

发表回复