私は Zend Framework でこの問題を抱えており、headLink と headScript を次のようにしたいと考えています。
$this->headLink()->appendStylesheet('styles/my.css');
しかし、ビューのページ ソースを表示して css のリンクをクリックすると、リンクは次のようになります。
http://localhost/mysite/public/user/profile/id/styles/my.css
ユーザーにはコントローラーの1つがあり、プロファイルはアクションのものです。一方、idは単なるパラメーターです。リンクは公開を指していませんでした。
もう 1 つの問題は、ビューの 1 つに AJAX スクリプトがある場合、次のような別の URL からデータを取得することです。
$(document).ready(function(){
...
$.ajax({
type: 'post',
dataType: 'json',
url: '../region/getcountryregions',
data: { id : test_id },
success: function(result){
// success
}, error: function(request, status, error){
console.log(request.responseText);
}
...
});
私のこのURLで完璧に動作します:
http://localhost/mysite/public/user/registration
しかし、URL が次のような場合:
http://localhost/mysite/public/user/profile/id/20
上記の両方のビューには、AJAX を使用した同じスクリプト タグがあります。問題は、2 番目のリンクが次の URL を指していることです。
http://localhost/mysite/public/user/profile/region/getcountryregions
region は Controller であり、getcountryregions は controller 領域の Action であるため、これはエラーです。
リンクを次の場所に移動する方法はありますか:
http://locahost/mysite/public/
上記のようなリンクが公開パスに簡単に誘導されるようにします。そして、ライブサーバーにアップロードするときにこれらのリンクに影響を与えることなく.