อยากทราบวิธีซ่อน url ที่ต่อท้ายด้วย .php ทั้งเว็บ ด้วย .htaccess ครับ
เช่น
www.myweb.com/about.php (http://www.myweb.com/about.php)
www.myweb.com/contact.php (http://www.myweb.com/contact.php)
อยากให้เป็น
www.myweb.com/about (http://www.myweb.com/about)
www.myweb.com/contact (http://www.myweb.com/contact)
+1 ให้ทุกคำตอบครับ
ขอบคุณครับ
หมายถึง URLrewrite หรือเปล่าครับ ถ้าใช่ลองดูนี่คับผม :P
http://www.scriptdd.com/webtip/apache-mod-rewrite-easy-url.html
http://www.divland.com/blog/2008/05/14/seo-url-mod-rewrite-htaccess/
ลองดูค่ะ ^_^
อยากรู้ด้วยครับ ขอด้วยคน :wanwan004:
+1 ให้ทุกท่านแล้วนะครับ
แต่เขียนยังไงให้ครอบคลุมทั้งไซต์หรอครับ :-[
<IfModule mod_rewrite.c>
IndexIgnore *
Options +FollowSymlinks
RewriteEngine on
RewriteRule ^about$ about.php [L,QSA]
RewriteRule ^contact$ contact.php [L,QSA]
</IfModule>
:wanwan044:
ระวังมีปัญหากับ path อื่นที่ต้องใช้เช่น /images/ พวกนี้ด้วยนะครับ
กำหนดดีๆ
+http://generateit.net/mod-rewrite/
ตอนนี้ทำได้แล้ว แต่ติดปัญหาอีกนิดหน่อย คือว่า
...ตอนนี้เว็บเข้าได้ทั้ง
www.myweb.com/about (http://www.myweb.com/about)
และ
www.myweb.com/about.php (http://www.myweb.com/about.php)
อยากให้มันไปหน้าโดยที่ไม่มี .php อย่างเดียวเลยครับ วอนผู้รู้ช่วยที
.htaccess ที่ผมใช้คือ
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}\.php -f
RewriteRule ^(.*)$ $1.php
:wanwan011:
แวะมาเก็บความรู้ :wanwan020:
มาเยี่ยมเยียน
อ้างถึงจาก: aunkanbin ใน 20 มิถุนายน 2012, 18:16:08
<IfModule mod_rewrite.c>
IndexIgnore *
Options +FollowSymlinks
RewriteEngine on
RewriteRule ^about$ about.php [L,QSA]
RewriteRule ^contact$ contact.php [L,QSA]
</IfModule>
:wanwan044:
ของท่านใช้ได้เลยครับ แต่อยากให้เวลาเข้า about.php แล้วให้มันตัด .php ไปด้วยอ่ะครับ
ขอบคุณครับ
อ้างถึงจาก: BOMEN ใน 20 มิถุนายน 2012, 18:27:17
ระวังมีปัญหากับ path อื่นที่ต้องใช้เช่น /images/ พวกนี้ด้วยนะครับ
กำหนดดีๆ
วิธีแก้ไขของผมเวลาดึงรูปมาแสดง จะแสดง Full Path ครับผม
อ้างถึงจาก: TummZ ใน 20 มิถุนายน 2012, 22:48:20
ตอนนี้ทำได้แล้ว แต่ติดปัญหาอีกนิดหน่อย คือว่า
...ตอนนี้เว็บเข้าได้ทั้ง
www.myweb.com/about (http://www.myweb.com/about)
และ
www.myweb.com/about.php (http://www.myweb.com/about.php)
อยากให้มันไปหน้าโดยที่ไม่มี .php อย่างเดียวเลยครับ วอนผู้รู้ช่วยที
.htaccess ที่ผมใช้คือ
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}\.php -f
RewriteRule ^(.*)$ $1.php
:wanwan011:
มันมีวิธีอยู่ครับ แต่ผมว่าเข้าไำด้ทั้ง 2 แบบน่าจะดีกว่านะครับ
มิฉะนั้นคุณจะมีปัญหาเรื่องการ get ตัวแปรนะครับ
ผมเคยมีประสบการณ์มาแล้ว :wanwan004:
น่าลองทำแฮะ...
อ้างถึงจาก: TummZ ใน 20 มิถุนายน 2012, 23:46:54
อ้างถึงจาก: aunkanbin ใน 20 มิถุนายน 2012, 18:16:08
<IfModule mod_rewrite.c>
IndexIgnore *
Options +FollowSymlinks
RewriteEngine on
RewriteRule ^about$ about.php [L,QSA]
RewriteRule ^contact$ contact.php [L,QSA]
</IfModule>
:wanwan044:
ของท่านใช้ได้เลยครับ แต่อยากให้เวลาเข้า about.php แล้วให้มันตัด .php ไปด้วยอ่ะครับ
ขอบคุณครับ
RewriteRule ^about$ pages/about.php [L,QSA]
RewriteRule ^contact$ pages/contact.php [L,QSA]
แบบนี้ จะเข้าได้เฉพาะ www.เว็บเรา.com/about
เพราะเราย้ายมันไปอยู่ใน Folder "pages" แล้วหรือเรียกว่า folder รวมหน้า ไม่ให้รกหน้า public_html ครับ
เมื่อเข้า www.เว็บเรา.com/about.php ก็จะไม่มีครับ 404 คุณก็ทำ หน้า404 ใว้รับลิงค์เสียอย่างเว็บทั่วๆไปเค้าทำกันครับ
ย้ายที่ Path แบบตัวอย่างผมด้านบน อย่าลืมดูเรื่อง path อื่นๆด้วยครับ แต่ก่อนผมเป็นแบบคุณเด๊ะๆ
ทำไปเรื่อย แก้ไปเรื่อยเราจะจัดวางตำแหน่งได้ลงตัว และเป็นระแบียบได้เองครับ
เข้ามาเก็บข้อมูลด้วย ขอบคุณมากๆครับ
mod rewrite บวกกับ php กำกับ หรือใช้ พวก framework ไปเลยก็ได้ ฮะ หุๆ :wanwan016:
มาเก็บความรู้ครับ :wanwan011:
มาแอบดูด้วยคน
ลองที่นี่มั้ยครับ ??? http://www.generateit.net/mod-rewrite/index.php
มารับความรู้ครับ