我使用友好的网址名称,如myservice / controller / action / key / value / key / value等。当我在远程主机上运行我的服务器时,一切都很好。但现在我尝试在我的Linux上运行服务器,我可以通过ip访问。我的mod_rewrite规则不起作用。有人能告诉我怎么才能改变这个?
我的旧规则是使用域
进行远程托管rewriteEngine On
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^.*$ index.php [NC,L]
Options +FollowSymLinks -Indexes -MultiViews
这是我的新规则不起作用
rewriteEngine On
RewriteCond %{REMOTE_ADDR} !^192\.168\.1\.104$
RewriteRule ^.*$ - [NC,L]
RewriteRule ^.*$ index.php [NC,L]
答案 0 :(得分:0)
好的,我尝试了很多次,这个规则工作正常
rewriteEngine On
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^.*$ index.php [NC,L]
Options +FollowSymLinks -Indexes -MultiViews
但是在apache2 / available-sites中的vhost中我必须添加
<Directory /var/www/html>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Require all granted
</Directory>
Thanx寻求帮助