简体   繁体   中英

How to redirect with .htaccess file in wamp server

Hey guys im trying to prevent that anybody can access the homepage of my wamp server.

So if somebody types www.example.com then it shows the homepage of the wamp server.

But if somebody tries to enter the www.example.com site then it should be redirected to www.example.com/moodle

This is what i tried so far in the .htaccess file:

 <IfModule mod_rewrite.c>
 RewriteEngine on
 RewriteCond %{REQUEST_URI} !/moodle$ [NC]
 RewriteRule .* /moodle [R=302,L]
</IfModule>

It seems like its creating an infinitive loop.

Here is my whole .htaccess file:

# On some PHP servers it may help if this file is copied
# to the main moodle directory and renamed .htaccess
#
# As soon as you do this, check your web site.  Is it
# still working OK?  If you are getting a "configuration
# error" then you may need to enable overrides by editing
# the main httpd.conf for Apache and in the main server
# or virtual server area, adding something like:
#
# <Directory /web/moodle>
#     AllowOverride All
# </Directory>
#

<IfModule mod_rewrite.c>
 RewriteEngine on
 RewriteCond %{REQUEST_FILENAME} !-d
 RewriteCond %{REQUEST_FILENAME} !-f
 RewriteRule ^((?!moodle/).*)$ moodle/$1 [NC,L]
</IfModule>

### Firstly, if you are using Apache 2, you need the following
### three lines to allow Apache to pass a PATH_INFO variable
### correctly for URLs like http://server/file.php/arg1/arg2

<IfDefine APACHE2>
    AcceptPathInfo on
</IfDefine>

### Secondly, you can define the default files in the Moodle
### directories as follows:

DirectoryIndex index.php index.html index.htm

### Thirdly, set up some PHP variables that Moodle needs

php_flag file_uploads            1
php_flag short_open_tag          1
php_flag session.auto_start      0
php_flag session.bug_compat_warn 0

### Fourthly, sometimes Apache limits the size of uploaded files
### (this is a separate limit to the one in PHP, see below).
### The setting here turns off this limitation

LimitRequestBody 0


### These are optional - you may not want to override php.ini
### To enable them, remove the leading hash (#)

#php_value upload_max_filesize 2M
#php_value post_max_size 2M
#php_value session.gc_maxlifetime 7200


### You can change the following line to point to the
### error/index.php file in your Moodle distribution.
### It provides a form which emails you (the admin)
### about 404 errors (URL not found).

#ErrorDocument 404 http://example.org/moodle/error/index.php


### People have reported that these can help in some cases
### (unusual) when you see errors about undefined functions

#php_value auto_prepend_file none
#php_value include_path .

You can use this rule in site root .htaccess:

RewriteEngine on

RewriteRule ^((?!moodle/).*)$ moodle/$1 [NC,L]

Try this one

  Options -MultiViews +FollowSymLinks
  RewriteEngine On
  RewriteCond %{THE_REQUEST} ^.*\/index\.php?
  RewriteCond %{THE_REQUEST} ^.*\/?
  RewriteRule ^(.*)index\.php?$ http://www.example.com/moodle$1 [R=301,L]

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM