0
我想要實現的是在我的推送狀態URL添加(強制)WWW時,它不存在。棘手的Apache重寫推狀態+添加WWW
我試圖熟悉重寫,並四處尋找可能的解決方案。在我的本地機器上也嘗試了很多變體。不知怎的,我只是不明白。
這裏是我有什麼,這是工作(我的httpd.conf文件中)
RewriteEngine On
RewriteCond %{REQUEST_URI} !emails/*
RewriteCond %{REQUEST_URI} !icons/*
RewriteCond %{REQUEST_URI} !src-svg/*
RewriteCond %{REQUEST_URI} !svg/*
RewriteCond %{REQUEST_URI} !css/*
RewriteCond %{REQUEST_URI} !tmpl/*
RewriteCond %{REQUEST_URI} !js/*
RewriteCond %{REQUEST_URI} !img/*
RewriteCond %{REQUEST_URI} !crawl/*
RewriteCond %{REQUEST_URI} !config/*
RewriteRule ^(.+)$ /index.php/$1 [L]
我試圖消除最後[L],並添加這些線路的不同變化,或在一個寫規則單線,但無濟於事。
RewriteCond %{HTTPS} !=on
RewriteCond %{HTTP_HOST} !^www\..+$ [NC]
RewriteRule^http://www.%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
因此,關鍵是添加WWW,靜靜的瀏覽器指向到index.php文件(這表示使用按壓狀態下我的單頁的應用程序)。第一個代碼塊中列出的目錄名稱應該從index.php規則中排除,並且可能不會收到WWW。
感謝您的任何意見!
編輯
我現在下面,這似乎工作至今。看起來有些旗幟是錯誤的。這是一種有效的方法嗎?
RewriteEngine On
RewriteCond %{REQUEST_URI} !emails/*
RewriteCond %{REQUEST_URI} !icons/*
RewriteCond %{REQUEST_URI} !src-svg/*
RewriteCond %{REQUEST_URI} !svg/*
RewriteCond %{REQUEST_URI} !css/*
RewriteCond %{REQUEST_URI} !tmpl/*
RewriteCond %{REQUEST_URI} !js/*
RewriteCond %{REQUEST_URI} !img/*
RewriteCond %{REQUEST_URI} !crawl/*
RewriteCond %{REQUEST_URI} !config/*
RewriteRule ^(.+)$ /index.php/$1
RewriteCond %{HTTPS} !=on
RewriteCond %{HTTP_HOST} !^www\..+$ [NC]
RewriteRule^http://www.%{HTTP_HOST}%{REQUEST_URI}