github.com/krum110487/go-htaccess@v0.0.0-20240316004156-60641c8e7598/tests/data/SRVROOT/htdocs/mod_rewrite/RewriteCond/.htaccess (about)

     1  # collection-name  mod_rewrite > RewriteCond
     2  # setup-makeFile   ${TEST_PATH}/pass.html
     3  RewriteEngine on
     4  
     5  # -------------------------------------------------------------
     6  # --------------------  Simple Examples  ----------------------
     7  # -------------------------------------------------------------
     8  # test-name        Simple Exists
     9  # request-url      ${TEST_URL}/PathExists
    10  RewriteCond  ^PathExists$ !-f
    11  RewriteRule ^(PathExists)$ pass.html
    12  
    13  # test-name        One Good One Bad
    14  # request-url      ${TEST_URL}/OneGoodOneBad
    15  # response-status  404
    16  RewriteCond  ^OneGoodOneBad$ !-f
    17  RewriteCond  ^OneGoodOneBad$ -f
    18  RewriteRule ^(OneGoodOneBad)$ pass.html
    19  
    20  # -------------------------------------------------------------
    21  # -------------------  Regex References  ----------------------
    22  # -------------------------------------------------------------
    23  # test-name        Refrencing RewriteRule
    24  # request-url      ${TEST_URL}/RefRewriteRule
    25  RewriteCond $1 ^RefRewriteRule$ 
    26  RewriteRule ^(RefRewriteRule)$ pass.html
    27  
    28  # test-name        Refrencing RewriteCond
    29  # setup-makeFile   ${TEST_PATH}/RefRewriteCond.html
    30  # request-url      ${TEST_URL}/RefRewriteCond
    31  # cleanup-delFile  ${TEST_PATH}/RefRewriteCond.html
    32  RewriteCond RefRewriteCond ^(RefRewriteCond)$ 
    33  RewriteRule ^(RefRewriteCond)$ %1.html
    34  
    35  # test-name        Refrencing Complex
    36  # setup-makeFile   ${TEST_PATH}/ReferenceComplex_localhost.html
    37  # request-url      ${TEST_URL}/ReferenceComplex
    38  # cleanup-delFile  ${TEST_PATH}/ReferenceComplex_localhost.html
    39  RewriteCond ^$1 !-f
    40  RewriteCond %{HTTP_HOST} ^(localhost):[0-9]+$
    41  RewriteRule ^(ReferenceComplex)$ $1_%1.html
    42  
    43  # -------------------------------------------------------------
    44  # -----------------  Variables References  --------------------
    45  # -------------------------------------------------------------
    46  # test-name        Variable ${HTTP_ACCEPT}
    47  # request-url      ${TEST_URL}/Var_HTTP_ACCEPT
    48  RewriteCond  %{HTTP_ACCEPT} .*test.*
    49  RewriteRule ^(Var_HTTP_ACCEPT)$ pass.html
    50  
    51  # test-name        Variable ${HTTP_COOKIE}
    52  # request-url      ${TEST_URL}/Var_HTTP_COOKIE
    53  RewriteCond  %{HTTP_COOKIE} ^value$
    54  RewriteRule ^(Var_HTTP_COOKIE)$ pass.html
    55  
    56  # test-name        Variable ${HTTP_FORWARDED}
    57  # request-url      ${TEST_URL}/Var_HTTP_FORWARDED
    58  RewriteCond  %{HTTP_FORWARDED} ^value$
    59  RewriteRule ^(Var_HTTP_FORWARDED)$ pass.html
    60  
    61  # test-name        Variable ${HTTP_HOST}
    62  # request-url      ${TEST_URL}/Var_HTTP_HOST
    63  RewriteCond  %{HTTP_HOST} ^value$
    64  RewriteRule ^(Var_HTTP_HOST)$ pass.html
    65  
    66  # test-name        Variable ${HTTP_PROXY_CONNECTION}
    67  # request-url      ${TEST_URL}/Var_HTTP_PROXY_CONNECTION
    68  RewriteCond  %{HTTP_PROXY_CONNECTION} ^value$
    69  RewriteRule ^(Var_HTTP_PROXY_CONNECTION)$ pass.html
    70  
    71  # test-name        Variable ${HTTP_REFERER}
    72  # request-url      ${TEST_URL}/Var_HTTP_REFERER
    73  RewriteCond  %{HTTP_REFERER} ^value$
    74  RewriteRule ^(Var_HTTP_REFERER)$ pass.html
    75  
    76  # test-name        Variable ${HTTP_USER_AGENT}
    77  # request-url      ${TEST_URL}/Var_HTTP_USER_AGENT
    78  RewriteCond  %{HTTP_USER_AGENT} ^value$
    79  RewriteRule ^(Var_HTTP_USER_AGENT)$ pass.html
    80  
    81  # test-name        Variable ${DOCUMENT_ROOT}
    82  # request-url      ${TEST_URL}/Var_DOCUMENT_ROOT
    83  RewriteCond  %{DOCUMENT_ROOT} ^value$
    84  RewriteRule ^(Var_DOCUMENT_ROOT)$ pass.html
    85  
    86  # test-name        Variable ${SCRIPT_GROUP}
    87  # request-url      ${TEST_URL}/Var_SCRIPT_GROUP
    88  RewriteCond  %{SCRIPT_GROUP} ^value$
    89  RewriteRule ^(Var_SCRIPT_GROUP)$ pass.html
    90  
    91  # test-name        Variable ${SCRIPT_USER}
    92  # request-url      ${TEST_URL}/Var_SCRIPT_USER
    93  RewriteCond  %{SCRIPT_USER} ^value$
    94  RewriteRule ^(Var_SCRIPT_USER)$ pass.html
    95  
    96  # test-name        Variable ${SERVER_ADDR}
    97  # request-url      ${TEST_URL}/Var_SERVER_ADDR
    98  RewriteCond  %{SERVER_ADDR} ^value$
    99  RewriteRule ^(Var_SERVER_ADDR)$ pass.html
   100  
   101  # test-name        Variable ${SERVER_ADMIN}
   102  # request-url      ${TEST_URL}/Var_SERVER_ADMIN
   103  RewriteCond  %{SERVER_ADMIN} ^value$
   104  RewriteRule ^(Var_SERVER_ADMIN)$ pass.html
   105  
   106  # test-name        Variable ${SERVER_NAME}
   107  # request-url      ${TEST_URL}/Var_SERVER_NAME
   108  RewriteCond  %{SERVER_NAME} ^value$
   109  RewriteRule ^(Var_SERVER_NAME)$ pass.html
   110  
   111  # test-name        Variable ${SERVER_PORT}
   112  # request-url      ${TEST_URL}/Var_SERVER_PORT
   113  RewriteCond  %{SERVER_PORT} ^value$
   114  RewriteRule ^(Var_SERVER_PORT)$ pass.html
   115  
   116  # test-name        Variable ${SERVER_PROTOCOL}
   117  # request-url      ${TEST_URL}/Var_SERVER_PROTOCOL
   118  RewriteCond  %{SERVER_PROTOCOL} ^value$
   119  RewriteRule ^(Var_SERVER_PROTOCOL)$ pass.html
   120  
   121  # test-name        Variable ${SERVER_SOFTWARE}
   122  # request-url      ${TEST_URL}/Var_SERVER_SOFTWARE
   123  RewriteCond  %{SERVER_SOFTWARE} ^value$
   124  RewriteRule ^(Var_SERVER_SOFTWARE)$ pass.html
   125  
   126  # test-name        Variable ${TIME_YEAR}
   127  # request-url      ${TEST_URL}/Var_TIME_YEAR
   128  RewriteCond  %{TIME_YEAR} ^value$
   129  RewriteRule ^(Var_TIME_YEAR)$ pass.html
   130  
   131  # test-name        Variable ${TIME_MON}
   132  # request-url      ${TEST_URL}/Var_TIME_MON
   133  RewriteCond  %{TIME_MON} ^value$
   134  RewriteRule ^(Var_TIME_MON)$ pass.html
   135  
   136  # test-name        Variable ${TIME_DAY}
   137  # request-url      ${TEST_URL}/Var_TIME_DAY
   138  RewriteCond  %{TIME_DAY} ^value$
   139  RewriteRule ^(Var_TIME_DAY)$ pass.html
   140  
   141  # test-name        Variable ${TIME_HOUR}
   142  # request-url      ${TEST_URL}/Var_TIME_HOUR
   143  RewriteCond  %{TIME_HOUR} ^value$
   144  RewriteRule ^(Var_TIME_HOUR)$ pass.html
   145  
   146  # test-name        Variable ${TIME_MIN}
   147  # request-url      ${TEST_URL}/Var_TIME_MIN
   148  RewriteCond  %{TIME_MIN} ^value$
   149  RewriteRule ^(Var_TIME_MIN)$ pass.html
   150  
   151  # test-name        Variable ${TIME_SEC}
   152  # request-url      ${TEST_URL}/Var_TIME_SEC
   153  RewriteCond  %{TIME_SEC} ^value$
   154  RewriteRule ^(Var_TIME_SEC)$ pass.html
   155  
   156  # test-name        Variable ${TIME_WDAY}
   157  # request-url      ${TEST_URL}/Var_TIME_WDAY
   158  RewriteCond  %{TIME_WDAY} ^value$
   159  RewriteRule ^(Var_TIME_WDAY)$ pass.html
   160  
   161  # test-name        Variable ${TIME}
   162  # request-url      ${TEST_URL}/Var_TIME
   163  RewriteCond  %{TIME} ^value$
   164  RewriteRule ^(Var_TIME)$ pass.html
   165  
   166  # test-name        Variable ${API_VERSION}
   167  # request-url      ${TEST_URL}/Var_API_VERSION
   168  RewriteCond  %{API_VERSION} ^value$
   169  RewriteRule ^(Var_API_VERSION)$ pass.html
   170  
   171  # test-name        Variable ${CONN_REMOTE_ADDR}
   172  # request-url      ${TEST_URL}/Var_CONN_REMOTE_ADDR
   173  RewriteCond  %{CONN_REMOTE_ADDR} ^value$
   174  RewriteRule ^(Var_CONN_REMOTE_ADDR)$ pass.html
   175  
   176  # test-name        Variable ${HTTPS}
   177  # request-url      ${TEST_URL}/Var_HTTPS
   178  RewriteCond  %{HTTPS} ^value$
   179  RewriteRule ^(Var_HTTPS)$ pass.html
   180  
   181  # test-name        Variable ${IS_SUBREQ}
   182  # request-url      ${TEST_URL}/Var_IS_SUBREQ
   183  RewriteCond  %{IS_SUBREQ} ^value$
   184  RewriteRule ^(Var_IS_SUBREQ)$ pass.html
   185  
   186  # test-name        Variable ${REMOTE_ADDR}
   187  # request-url      ${TEST_URL}/Var_REMOTE_ADDR
   188  RewriteCond  %{REMOTE_ADDR} ^value$
   189  RewriteRule ^(Var_REMOTE_ADDR)$ pass.html
   190  
   191  # test-name        Variable ${REQUEST_FILENAME}
   192  # request-url      ${TEST_URL}/Var_REQUEST_FILENAME
   193  RewriteCond  %{REQUEST_FILENAME} ^value$
   194  RewriteRule ^(Var_REQUEST_FILENAME)$ pass.html
   195  
   196  # test-name        Variable ${REQUEST_SCHEME}
   197  # request-url      ${TEST_URL}/Var_REQUEST_SCHEME
   198  RewriteCond  %{REQUEST_SCHEME} ^value$
   199  RewriteRule ^(Var_REQUEST_SCHEME)$ pass.html
   200  
   201  # test-name        Variable ${REQUEST_URI}
   202  # request-url      ${TEST_URL}/Var_REQUEST_URI
   203  RewriteCond  %{REQUEST_URI} ^value$
   204  RewriteRule ^(Var_REQUEST_URI)$ pass.html
   205  
   206  # test-name        Variable ${THE_REQUEST}
   207  # request-url      ${TEST_URL}/Var_THE_REQUEST
   208  RewriteCond  %{THE_REQUEST} ^value$
   209  RewriteRule ^(Var_THE_REQUEST)$ pass.html
   210  
   211  # collection-cleanup
   212  # cleanup-delFile	 ${TEST_PATH}/pass.html
   213  
   214  
   215  #EXAMPLE 
   216  #https://httpd.apache.org/docs/trunk/rewrite/intro.html