如何通过ip all pages设置mod_rewrite

时间:2017-04-17 10:09:58

标签: apache .htaccess mod-rewrite

我使用友好的网址名称,如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]

1 个答案:

答案 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寻求帮助