我在我的网站上使用了下面的重写,它在共享服务器上工作得很好。
RewriteEngine On
<Files .*>
Order Deny,Allow
Deny From All
</Files>
<Files ~ "^\.ht">
order allow,deny
deny from all
satisfy all
</Files>
<FilesMatch "^php5?\.(ini|cgi)$">
Order Deny,Allow
Deny from All
Allow from env=REDIRECT_STATUS
</FilesMatch>
AddDefaultCharset utf-8
Options All -Indexes
RewriteCond %{REQUEST_FILENAME} \.(gif|jpe?g|png|js|css|swf|ico|txt|pdf|xml)$ [OR]
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^.*$ public_html/index.php [NC,L]
但现在它显示了以下错误。
404页面未找到
您访问的页面不存在!
由LiteSpeed Web服务器提供支持
LiteSpeed Technologies不对本网站的管理和内容负责!*
如何修复此错误?
它对LiteSpeed
的作用不同?
5条答案
按热度按时间ebdffaop1#
您使用的是Litespeed企业版还是Openlitespeed?
OpenLitespeed无法使用.htaccess文件,您需要通过Web管理员对其进行配置:编辑虚拟主机-〉重写
Litespeed Enterprise应该使用htaccess文件,请确保将其配置为使用htaccess文件:
编辑虚拟主机-〉重写-〉启用重写:否
q3qa4bjr2#
Openlitespeed支持.htaccess,但必须在Openlitespeed管理面板中设置。从Openlitespeed管理面板中单击虚拟主机,选择您的vhost。单击重写选项卡,在重写控制-〉启用重写中选择“是”。将您的文件指向重写规则,例如/usr/local/lsws/web/.htaccess,然后重新启动litespeed。
如果您使用centos,则可以使用https://github.com/tujuhion/openlitespeed-centos-autoinstall中支持多vhost的自动安装脚本
iezvtpos3#
根据我的经验,OpenLiteSpeed正确地加载了大多数重写,但是你必须在规则前面加上“/?",因为有一个可选的斜杠。
FilesMatch规则需要在上下文或重写级别设置,请参见此处:
https://openlitespeed.org/kb/access-control/#Controlling_Access_to_Files
iyzzxitl4#
对于每个版本的php在litespeed面板;您必须添加一个单独脚本处理程序和外部应用程序,最后请重新启动您的lsws服务。
kpbwa7wx5#
如果您在OpenLiteSpeed中添加任何规则后需要重新启动Web服务器,请使用此命令重新启动Web服务器。
您还可以从web admin中的重写规则添加更多内容。