作者DongFeng (Little Five)
看板PHP
标题[请益]伪静态化
时间Wed Aug 21 12:20:23 2013
不知道这个问题能不能po在这问, 如果不行还请通知我删除, 谢谢!
客户的网站有一个需求是要静态化而且html要中文
example:
http://tw.news.yahoo.com/8%E6%9C%8821%E6%97%A5%E5%90%84%E7%B8%A3%E5%B8%82%E4%B8
%8A%E7%8F%AD%E4%B8%8A%E8%AA%B2%E4%B8%80%E8%A6%BD-221100408.html
因为功力还不到家, 一开始听到这个要求只想到以建立范本去一个一个建档的方法
後来在网路上知道了.htaccess伪静态化的方法才松了一口气(?
以下是我.htaccess的写法
----------
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /default/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule (.*)\.html$ router.php?link=$1
</IfModule>
----------
中文档名的部分则藉由在.htaccess将网页导向router.php, 然後以$1判断是哪一笔资料
原本一切都如我想像的进行...
但今天要另外加功能上去时才发现, 只要经由.htaccess->router.php->目标资料 路径取
得的网页, href = "#" 的 a标签 跟 input type ='button' 一类会有点击功能的元素通
通失效, 自行加上 style = cursor: pointer也是无效
因为这个原因导致藉由click元素在触发的javascript事件完全没办法得到触发...
如果版上前辈知道是甚麽原因导致这个问题的, 不知道方不方便告知我一下...先谢谢了!
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 114.33.9.244
1F:→ kerash:#标签是浏览器找画面上bookmark的行为,应该跟rewrite无关 08/21 21:50
2F:→ kerash:我刚刚测试rewrite後一样可以触发才是 08/21 21:50
3F:→ DongFeng:已经找出问题了果然跟reweite无关, 是因为设计的时候结构 08/21 22:52
4F:→ DongFeng:不正确, 导致a标签被其他的元素区块遮蔽了, 导致看的到点 08/21 22:52
5F:→ DongFeng:不到 08/21 22:52