Register Register Member Login Member Login Member Login Forgot Password ??
PHP , ASP , ASP.NET, VB.NET, C#, Java , jQuery , Android , iOS , Windows Phone
 

Registered : 109,027

HOME > PHP > PHP Forum > รบกวนผู้รู้ช่วยแปลง .htaccess ไปเป็น web.config บน iis/windows ด้วยครับ



 

รบกวนผู้รู้ช่วยแปลง .htaccess ไปเป็น web.config บน iis/windows ด้วยครับ

 



Topic : 094790

Guest




พอดีว่ากำลังศึกษาพวก framework อยู่ครับ

ด้วยเหตุที่รัน php บน iis เลยจำเป็นต้องใช้ url rewrite แทน

ซึ่งมันจะใช้เป็น web.config แทน .htaccess

โดย framework ตัวอื่นๆ สามารถ import ไฟล์ .htaccess

เข้ามาให้ url rewrite ทำการ convert เป็น web.config ได้โดยไม่มี error ใดๆ

แต่ติดอยู่ที่ framework 2 ตัว ที่ url rewrite มัน convert ไม่ได้ เพราะติด error

ที่ %{ENV:REDIRECT_STATUS} กับ [E=BASE:%1] และ %{ENV:BASE}

รบกวนผู้เชี่ยวชาญ ช่วย convert เป็น web.config ให้ดูตัวอย่างด้วยครับ



Zend 2 framework

.htaccess
RewriteEngine On # The following rule tells Apache that if the requested filename # exists, simply serve it. RewriteCond %{REQUEST_FILENAME} -s [OR] RewriteCond %{REQUEST_FILENAME} -l [OR] RewriteCond %{REQUEST_FILENAME} -d RewriteRule ^.*$ - [NC,L] # The following rewrites all other queries to index.php. The # condition ensures that if you are using Apache aliases to do # mass virtual hosting, the base path will be prepended to # allow proper resolution of the index.php file; it will work # in non-aliased environments as well, providing a safe, one-size # fits all solution. RewriteCond %{REQUEST_URI}::$1 ^(/.+)(.+)::\2$ RewriteRule ^(.*) - [E=BASE:%1] RewriteRule ^(.*)$ %{ENV:BASE}index.php [NC,L]




Symfony 2 framework

.htaccess
# Use the front controller as index file. It serves as fallback solution when # every other rewrite/redirect fails (e.g. in an aliased environment without # mod_rewrite). Additionally, this reduces the matching process for the # startpage (path "/") because otherwise Apache will apply the rewritting rules # to each configured DirectoryIndex file (e.g. index.php, index.html, index.pl). DirectoryIndex app.php <IfModule mod_rewrite.c> RewriteEngine On # Redirect to URI without front controller to prevent duplicate content # (with and without `/app.php`). Only do this redirect on the initial # rewrite by Apache and not on subsequent cycles. Otherwise we would get an # endless redirect loop (request -> rewrite to front controller -> # redirect -> request -> ...). # So in case you get a "too many redirects" error or you always get redirected # to the startpage because your Apache does not expose the REDIRECT_STATUS # environment variable, you have 2 choices: # - disable this feature by commenting the following 2 lines or # - use Apache >= 2.3.9 and replace all L flags by END flags and remove the # following RewriteCond (best solution) RewriteCond %{ENV:REDIRECT_STATUS} ^$ RewriteRule ^app\.php(/(.*)|$) %{CONTEXT_PREFIX}/$2 [R=301,L] # If the requested filename exists, simply serve it. # We only want to let Apache serve files and not directories. RewriteCond %{REQUEST_FILENAME} -f RewriteRule .? - [L] # The following rewrites all other queries to the front controller. The # condition ensures that if you are using Apache aliases to do mass virtual # hosting, the base path will be prepended to allow proper resolution of the # app.php file; it will work in non-aliased environments as well, providing # a safe, one-size fits all solution. RewriteCond %{REQUEST_URI}::$1 ^(/.+)(.+)::\2$ RewriteRule ^(.*) - [E=BASE:%1] RewriteRule .? %{ENV:BASE}app.php [L] </IfModule> <IfModule !mod_rewrite.c> <IfModule mod_alias.c> # When mod_rewrite is not available, we instruct a temporary redirect of # the startpage to the front controller explicitly so that the website # and the generated links can still be used. RedirectMatch 302 ^/$ /app.php/ # RedirectTemp cannot be used instead </IfModule> </IfModule>



ปล. ที่ต้องใช้ใน iis ก็เพราะเขียน web ทั้ง asp.net, php และ jsp ครับ

เลยให้ php รันที่ iis เพราะยังไงก็ต้องใช้ iis รัน asp.net อยู่แล้ว



Tag : PHP, Windows







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2013-05-07 09:21:11 By : ห้ามตอบเกินวันละ 2 กระทู้ View : 1794 Reply : 4
 

 

No. 1



โพสกระทู้ ( 74,058 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook

ตัวอย่างนี้ครับ แปลงไม่ยากครับ

การทำ mod_rewrite บน IIS การแปลง Convert .htaccess เป็น Web.Config (IIS and PHP)







แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-05-07 10:34:25 By : mr.win
 


 

No. 2

Guest


ขอบคุณนะครับ แต่ผมก็เรียนไปแล้วว่า

framework ตัวอื่นๆ สามารถ import ไฟล์ .htaccess

เข้ามาให้ url rewrite ทำการ convert เป็น web.config ได้โดยไม่มี error ใดๆ

แต่ติดอยู่ที่ framework 2 ตัว ที่ url rewrite มัน convert ไม่ได้ เพราะติด error


ที่ %{ENV:REDIRECT_STATUS} กับ [E=BASE:%1] และ %{ENV:BASE}

4
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-05-07 10:42:15 By : ห้ามตอบเกินวันละ 2 กระทู้
 

 

No. 3



โพสกระทู้ ( 74,058 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook

อันนี้ไม่ถนัดจริง ๆ ครับ ถ้าไม่ได้ คงจะต้อง Remove ออกแล้ว เขียน Rule ที่เป็นของ IIS แทนครับ

Quote:
RewriteCond %{ENV:REDIRECT_STATUS} ^$
RewriteRule ^app\.php(/(.*)|$) %{CONTEXT_PREFIX}/$2 [R=301,L]


ตัวนี้ผมเข้าใจว่าน่าจะ เมื่อ URL ซ้ำ หรือเปลี่ยน URL เลยให้ Move เป็นแบบ 301 Moved Permanently
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-05-07 17:34:20 By : mr.win
 


 

No. 4

Guest


ขอบคุณครับ สงสัยต้องศึกษาเองแล้วแหละครับ

เดี๋ยวจะลองดู syntax ของ .htaccess กับของ web.config ด้วยเลย

วันหลังจะได้แปลงเองได้ เดี๋ยวหาตารางเทียบก่อน
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-05-08 08:38:11 By : ห้ามตอบเกินวันละ 2 กระทู้
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : รบกวนผู้รู้ช่วยแปลง .htaccess ไปเป็น web.config บน iis/windows ด้วยครับ
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ FTP| ใส่แถวของตาราง ใส่คอลัมน์ตาราง| ตัวยก ตัวห้อย ตัวพิมพ์ดีด| ใส่โค้ด ใส่การอ้างถึงคำพูด| ใส่ลีสต์
smiley for :lol: smiley for :ken: smiley for :D smiley for :) smiley for ;) smiley for :eek: smiley for :geek: smiley for :roll: smiley for :erm: smiley for :cool: smiley for :blank: smiley for :idea: smiley for :ehh: smiley for :aargh: smiley for :evil:
Insert PHP Code
Insert ASP Code
Insert VB.NET Code Insert C#.NET Code Insert JavaScript Code Insert C#.NET Code
Insert Java Code
Insert Android Code
Insert Objective-C Code
Insert XML Code
Insert SQL Code
Insert Code
เพื่อความเรียบร้อยของข้อความ ควรจัดรูปแบบให้พอดีกับขนาดของหน้าจอ เพื่อง่ายต่อการอ่านและสบายตา และตรวจสอบภาษาไทยให้ถูกต้อง

อัพโหลดแทรกรูปภาพ

Notice

เพื่อความปลอดภัยของเว็บบอร์ด ไม่อนุญาติให้แทรก แท็ก [img]....[/img] โดยการอัพโหลดไฟล์รูปจากที่อื่น เช่นเว็บไซต์ ฟรีอัพโหลดต่าง ๆ
อัพโหลดแทรกรูปภาพ ให้ใช้บริการอัพโหลดไฟล์ของไทยครีเอท และตัดรูปภาพให้พอดีกับสกรีน เพื่อความโหลดเร็วและไฟล์ไม่ถูกลบทิ้ง

   
  เพื่อความปลอดภัยและการตรวจสอบ กระทู้ที่แทรกไฟล์อัพโหลดไฟล์จากที่อื่น อาจจะถูกลบทิ้ง
 
โดย
อีเมล์
บวกค่าให้ถูก
<= ตัวเลขฮินดูอารบิก เช่น 123 (หรือล็อกอินเข้าระบบสมาชิกเพื่อไม่ต้องกรอก)







Exchange: นำเข้าสินค้าจากจีน, Taobao, เฟอร์นิเจอร์, ของพรีเมี่ยม, ร่ม, ปากกา, power bank, แฟลชไดร์ฟ, กระบอกน้ำ

Load balance : Server 00
ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2024 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่