Tôi đang làm việc với một khách hàng trên một trang web thương mại điện tử. Tôi đã triển khai URL sạch bằng cách sử dụng .htaccess. Tôi cũng đã sử dụng .htaccess để giải quyết các vấn đề kinh điển như chuyển hướng www sang không phải www và xóa index.php khỏi URL.
Trang web gần đây đã bắt đầu chậm lại đáng kể, đôi khi thậm chí không tải. Trang web được lưu trữ trên GoDaddy và khi khách hàng gọi GoDaddy, họ nói với anh rằng đó là tệp .htaccess làm chậm trang web. Tôi thấy điều này rất khó xảy ra vì những trải nghiệm trong quá khứ của tôi, nhưng tôi không chắc chắn 100%. Tôi nghĩ rằng trang web của khách hàng rất có thể trên một máy chủ được chia sẻ với một khu phố bận rộn, do đó làm chậm trang web. Nó không phải lúc nào cũng chậm, nhưng khá rời rạc suốt cả ngày, tải nhanh ở một số điểm và chậm ở những thời điểm khác.
Tệp .htaccess có thể làm chậm trang web để thu thập dữ liệu không? Nếu vậy, có cách nào tốt hơn để giải quyết những vấn đề này với các quy tắc viết lại khác nhau và như vậy?
Đây là tệp .htaccess thực tế trông như thế nào:
Options +FollowSymlinks
RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_HOST} ^www.example.net [NC]
RewriteRule ^(.*)$ http://example.net/$1 [L,R=301]
RewriteRule ^products/([0-9a-zA-Z\_\-]*)\.htm([l]?)$ index.php p=product&product_code=$1 [L]
RewriteRule ^catalog/([0-9a-zA-Z\_\-]*)\.htm([l]?)$ index.php p=catalog&catalog_code=$1 [L]
RewriteRule ^pages/([0-9a-zA-Z\_\-]*)\.htm([l]?)$ index.php?p=page&page_id=$1 [L]
RewriteRule ^index\.htm([l]?)$ index.php?p=home [L]
RewriteRule ^site_map\.htm([l]?)$ index.php?p=site_map [L]
RewriteCond %{QUERY_STRING} ^p=home$
RewriteRule (.*) ? [R=permanent]
Tôi là một người mới .htaccess và regex, vì vậy bất kỳ sai lầm nào cũng chỉ ra.