2

For one of the sub-paths, I am trying to restrict access only to Intranet originated requests. I tried following configuration, but it's not working as expected.

<VirtualHost *:7777>

Debug ON
RewriteEngine On
RewriteOptions inherit

RewriteRule   ^/$ /test1  [R,L]
RewriteRule   ^/test2$ -  [R=404] [L]

RewriteRule   ^/stage$ /stage/test1  [R,L]
RewriteRule   ^/stage/test2$ -  [R=404] [L]

<IfModule weblogic_module>
   WebLogicCluster localhost:7003,localhost:7005
</IfModule>

<Location /test1>
    SetHandler weblogic-handler
</Location>

<Location /test2>
    SetHandler weblogic-handler
</Location>

<Location /api>
    SetHandler weblogic-handler
    PathPrepend /test1
</Location>

<Directory /stage/test1>
    Order  deny,allow
    deny from all
    Allow from 192.168
    Allow from 127
</Directory>

<Directory /stage/test2>
    Order  deny,allow
    deny from all
    Allow from 192.168
    Allow from 127
</Directory>

<Directory /stage/api>
    Order  deny,allow
    deny from all
    Allow from 192.168
    Allow from 127
</Directory>

<Location /stage/test1>
    SetHandler weblogic-handler
    WebLogicCluster localhost:7203,localhost:7205
    PathTrim /stage
</Location>

<Location /stage/test2>
    SetHandler weblogic-handler
    WebLogicCluster localhost:7203,localhost:7205
    PathTrim /stage
</Location>

<Location /stage/api>
    SetHandler weblogic-handler
    WebLogicCluster localhost:7203,localhost:7205
    PathTrim /stage
    PathPrepend /test1
</Location>

</VirtualHost>

Can someone please help me resolving this?

0

2 Answers 2

1

After consulting the apache doc again, use the following in your case

<Location /stage/test1>

    SetHandler weblogic-handler
    WebLogicCluster localhost:7203,localhost:7205
    PathTrim /stage

    Order deny,allow
    Deny from all
    Allow from 192.168.1.3 127

</Location>

Apply access restriction in location section.

4
  • I tried the following: <Directory /stage/test1> Order allow,deny Allow from 192.168.1.3 Allow from 127 </Directory> Where my IP address is 192.168.1.2 but I am able to access the page. Am I missing something? Sorry I could not get formatting correct.
    – kn_pavan
    Dec 12, 2012 at 6:18
  • do you have .htaccess in those directory overriding the restriction?
    – John Siu
    Dec 12, 2012 at 12:30
  • '/stage' is a re-direction path I am using, which will be PathTrim'd in <Location> section.
    – kn_pavan
    Dec 19, 2012 at 1:23
  • I did not pay attention before that you have redirection and then a location section. I revised my answer.
    – John Siu
    Dec 19, 2012 at 2:00
1

This worked, but I am not sure if it is cleaner way or not.

RewriteCond %{REMOTE_ADDR} !^10
RewriteCond %{REQUEST_URI} !^stage/(.*)
RewriteRule   ^/stage/(.*) -  [R=404] [L]

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .