Hướng dẫn convert .htaccess sang web.config trong Plesk Window
Để convert .htaccess
sang web.config
cho hosting Windows chạy Plesk với IIS, bạn cần hiểu rằng:
-
.htaccess
dùng cho Apache -
web.config
dùng cho IIS (Internet Information Services)
Nên khi chuyển web từ máy chủ apache và nginx qua Plesk Window thường bị lỗi .htaccess không hoạt động được do Window không hiểu file này.
Dưới đây là hướng dẫn từng bước chuyển đổi .htaccess
sang web.config
trong môi trường Plesk chạy Windows.
Ví dụ website bạn đang có .htaccess như sau:
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
# Nếu yêu cầu không phải file hoặc thư mục thật, thì chuyển về index.php
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
Bạn cần phải remote vào máy chủ đang cài Plesk > Bật IIS > Click vào website bất kì. Nhìn vào màn hình bên phải > URL Rewrite
Sau đó chọn Import Rules
Sau đó chọn nhập htaccess vào mục Rewrite rule > kết quả trả về ở mục converted rules > tab xml view
Kết quả:
<rewrite>
<!--This directive was not converted because it is not supported by IIS: RewriteBase /.-->
<rules>
<!--# BEGIN WordPress-->
<rule name="Imported Rule 1" stopProcessing="true">
<match url="^index\.php$" ignoreCase="false" />
<action type="None" />
</rule>
<rule name="Imported Rule 2" stopProcessing="true">
<match url="." ignoreCase="false" />
<conditions>
<!--# Nếu yêu cầu không phải file hoặc thư mục thật, thì chuyển về index.php-->
<add input="{REQUEST_FILENAME}" matchType="IsFile" ignoreCase="false" negate="true" />
<add input="{REQUEST_FILENAME}" matchType="IsDirectory" ignoreCase="false" negate="true" />
</conditions>
<action type="Rewrite" url="/index.php" />
</rule>
</rules>
</rewrite>
Lúc này bạn có thể copy kết quả bỏ vào file web.config. Chúc các bạn thành công.