0
我無法將我的網址改寫爲適合搜索引擎優化的網址。我已經嘗試了很多來自這裏和其他地方的片段,但沒有一個看起來工作 - 我不知道爲什麼!htaccess'漂亮的網址'不起作用
由於我使用它進行域和IP canocialisation,所以重寫引擎正在工作並啓用。只是無法使用URL重寫。
我想讓網址讀取; xxx.com/profile/Name而不是xxx.com/profile.php?user=Name。
我目前正在嘗試的代碼是;
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^profile/([^/]+)$ /profile.php?user=$1 [L]
我的全htaccess的代碼;
ErrorDocument 404 http://localhost/CE/?404=1&page=1
<IfModule mod_headers.c>
# Set XSS Protection header
Header set X-XSS-Protection "1; mode=block"
</IfModule>
# allow all except those indicated here
<Files *>
order allow,deny
allow from all
deny from 188.143.232.32
deny from 188.143.232.27
deny from 188.143.234.155
deny from 188.143.*.*
</Files>
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^profile/([^/]+)$ /profile.php?user=$1 [L]
# Canocial IP
RewriteCond %{HTTP_HOST} ^217\.160\.0\.148 [nc,or]
# Canocial URL
RewriteCond %{HTTP_HOST} ^www\.xxx\.com$
RewriteRule ^/?$ "http\:\/\/xxx\.com\/" [R=301,L]
RewriteCond %{HTTP_USER_AGENT} libwww-perl.*
RewriteRule .* ? [F,L]
<IfModule mod_expires.c>
ExpiresActive on
ExpiresByType image/jpg "access plus 3 days"
ExpiresByType image/jpeg "access plus 3 days"
ExpiresByType image/gif "access plus 1 month"
ExpiresByType image/png "access plus 1 month"
</IfModule>
我已經受夠了這東西的問題之前的另一個項目,從來沒有真正解決了他們,所以它會是不錯的找到一個可行的解決方案。
注:我檢查了堆棧溢出許多其他的'解決方案' - 沒有我已經嘗試過的工作。
作品 - 謝謝!但是現在導致了一個帶有用戶變量的圖庫,並在SQL查詢中使用它來檢索圖像。我有一些代碼顯示一個佔位符,如果沒有圖像可用或無法檢索。他們現在只是閃光的破碎圖像。 – Ben
你是否在profile.php中獲得了用戶變量,如果出現這是另一個問題,請嘗試在你的頁面中使用' '「。 –
我剛剛在生產環境中進行了測試,並且它正在重寫網址,但所有來自數據庫的信息都沒有顯示 - 它只是顯示一個空白的,未填充的模板。我已經配置了基礎href。該變量正在profile.php文件中使用。 – Ben